zoukankan      html  css  js  c++  java
  • 爬虫基础

    聚焦爬虫的流程

    得到url_list即需要爬取的url地址,
    
    发起请求,返回响应内容,
    
    如果响应内容中还有你需要爬取的url再添加到url_list中,
    
    再次发起请求,直到没有url或者不需要爬取的url,
    
    提取数据,提取需要的数据,
    
    最后一步,把数据存入数据库

    requests模块

    作用:发起请求,返回响应数据

    requests的基本使用

    requests.get(url)

    response(响应的常见属性)

    response.text      # 响应内容,str类型
    response.content    # 响应内容,bytes类型
    response.status_code   # 响应状态码
    response.request.headers  # 响应对应的请求头
    response.headers   # 响应头
    response.request.cookies   # 响应对应请求的cookie
    response.cookies   # 响应的cookie(经过了set-cookie动作)

    response.text和response.content的区别

    response.text
    类型:str
    如何修改编码方式: response.encoding=“gbk”
    
    response.content
    类型: bytes
    如何修改编码方式: response.content.deocde("utf8")
    
    
    获取网页源码的通用方式:
    response.content.decode()
    response.content.decode("GBK")
    response.text

    更推荐使用response.content.deocde()的方式获取响应的html页面

    response.request.headers

    1.1 为什么要带上请求头

    模拟浏览器,欺骗服务器,获取和浏览器一致的内容

    1.2 header的类型  

    字典

    1.3 用法

    headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"
    ....
    } # 把这个字典赋值进去

    response.get(url, headers
    =headers)

    请求参数

    什么是请求参数

    url问号后面的就是请求参数,也叫查询字符串

    怎么获取

    kw 也是一个字典类型
    params=kw  这个就是获取查询字符串的属性
    # 带上请求参数发起请求,获取响应
    response = requests.get(url, headers=headers, params=kw)

    requests模块

    • 在python2 和python3中通用,方法完全一样
    • requests简单易用
    • Requests能够自动帮助我们解压(gzip压缩的等)响应内容
  • 相关阅读:
    media query 开发总结
    整屏滚动
    移动端reset样式
    中国天气网 城市代码 sql语句
    php文章tag标签的增删
    oracle的分号和斜杠/
    php 操作 oracle lob 数据2
    php 操作 oracle lob 数据
    oracle创建用户
    php进度条
  • 原文地址:https://www.cnblogs.com/wutongluo/p/12686399.html
Copyright © 2011-2022 走看看