爬虫入门 requests库

写在最前的具体资料:

  https://2.python-requests.org//zh_CN/latest/user/quickstart.html

  https://www.liaoxuefeng.com/wiki/1016959663602400/1183249464292448

  http://cn.python-requests.org/zh_CN/latest/

以下为个人理解:

首先先列举一下requests库的方法,具体有.get() .head() .post() .put() .patch() .delete()。这些方法都是和HTTP协议的方法一一对应的。

get()方法可以获取全部资源,而head()方法仅仅是获取头部信息,post,put,patch方法可以将自己的资源放入url对应的位置上,delete()方法可以删掉这个url对应的现有资源

put和patch方法的区别是,put方法要把所有对应的资源全部提交一遍,而patch只需要提交需要修改的那个资源,而不需要像put一样提交所有对应的资源。post方法可以向服务器提交新增数据

request

requests库还有一种方法是request方法,即requests.request(method,url,**kwargs)。其中还有三个参数,method表示请求方法,对应HTTP协议的七种方法,url则对应的是url链接,即网址。**kwargs就是13种控制访问的参数,即

  params(字典或者字节序列,可以作为参数添加到url中),

  data(作为向服务提交数据时使用),

  json(json格式的数据 ),

  headers(可以用改字段来定义自己发起访问时http的头字段,可以用来模拟任何我们想模拟的浏览器向url发起请求),

   cookies(用来解析http中的cookies),

  auth(元组,支持http认证功能),

  files(字典类型,传输文件时使用的字段),

  proxies(字典类型,设定访问代理服务器,可以增加登录认证,可以有效的隐藏自己ip地址信息),

  allow_redirects

  stream(获取内容立即下载)

  verify

  cert(本地ssl证书路径)

  timeout(超时)

request.get(url,parpams,**kwargs)与request相同   使用的最多也是最关键

request.head(url,**kwargs)同上

request.post(url,data,json,**kwargs)和request中相同

request.put(url,data,**kwargs)同上

request.petch(url,data,**kwargs)同

request.delete(url,**kwargs) 同上

代码框架

  import requests

  url = 'http://www.baidu.com'
  try:
      #模拟浏览器
      kv = {'user-agent':'Mozilla/5.0'}
      r = requests.get(url , headers = kv)
      #状态码检查
      r.raise_for_status()
      r.encoding = r.apparent_encoding
      print(r.text)
  except:
      ("爬取失败")

  

原文地址:https://www.cnblogs.com/afei123/p/11182753.html