Python爬虫篇--2

爬虫基础篇(3.30-3.31)

主要是重新收集了requests库的内容


目录

一. 爬取网页的通用代码框架
二. requests库的七个主要方法
三. requests库的request方法
四. Robots协议


一. 爬取网页的通用代码框架

import requests

def getHTMLText(url):
       try:
            r = requests. get(url, timeout = 30)
            r.raise_for_status()   #如果状态不是200,引发HTTPError异常
            r. encoding = r.apparent_encoding
            return r.text
        except:
               return"产生异常"

if __name__ == "__main__"
            url="http://www.baidu.com"
            print(getHTMLText(url))

注:raise_for_status()方法可判断返回的response对象的状态是否正常(状态值非200则异常)

二. requests库的七个主要方法

  • requests.request()
    构造一个请求,支撑一下各方法的基础方法
  • requests.get()
    获取HTML网页的主要方法,对应HTTP的GET
  • requests.head()
    获取HTML网页头的信息方法,对应HTTP的HEAD
  • requests.post()
    向HTML网页提交POST请求方法,对应HTTP的POST,附加文件/内容
  • requests.put()
    向HTML网页提交PUT请求的方法,对应HTTP的RUT,内容覆盖
  • requests.patch()
    向HTML网页提交局部修改请求,对应于HTTP的PATCH,部分修改
  • requests.delete()
    向HTML页面提交删除请求,对应于HTTP的DELETE

三. requests库的request方法

requests.request(method, url, **kwargs)

其中method参数表示请求方法,包括这几个:
‘GET’ ‘HEAD’ ‘POST’ ‘PUT’ ‘PATCH’ ‘delete’

(实际上就是requests库的另外几个方法)

**kwargs参数包括:

  • params : 字典或字节序列,作为参数增加到url中
  • data : 字典、字节序列或文件对象,作为Request的内容
  • json : JSON格式的数据,作为Request的内容
  • headers : 字典,HTTP定制头
  • cookies : 字典或CookieJar,Request中的auth : 元组支持HTTP认证功能
  • files : 字典类型,传输文件
  • timeout : 设定超时时间,秒为单位
  • proxies : 字典类型,设定访问代理服务器,可以增加登录认证

四. Robots协议

  • 作用: 网站告知网络爬虫那些页面可以抓去,哪些不行
  • 形式:在网站根目录下的robots.txt文件

Robots协议基本语法:

#注释. *代表所有、 /代表根目录
User-agent:*
Disallow:/

注:网站的人机交互模式,如图形、文本框、需要点击按钮的,在正式地向后台提交的时候,实际上都是以链接的形式提交的,当需要用py模拟申请的时候,需了解其向后台提交的链接形式。(网页上的任何一个内容都有一个与之对应的url链接)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值