requests是一个很常用的python库。它有GET、POST、PUT、DELETE等方法。
安装
1 | $ pip install requests |
方法
GET
常用方式
HTTP中最常见的请求之一就是GET请求,下面我们详细了解一下requests构建GET请求。回应的请求信息:
1 | import requests |
运行结果如下:
1 | { |
可以发现,我们成功发起了GET请求,返回结果包含请求头、URL、IP等信息。并且可以看到r.text(),r.json()的类型。
抓取网页
上面的请求链接返回的是 JSON 形式的字符串, 那么如果请求普通 的网页,则 肯定能获得相应的 内容了。 下面以“知乎”→“发现”页面为例来看一下:
1 | headers = { |
运行结果
1 | $ ['\n癌症是怎样被检查出来的,普通体检能查出癌症吗?\n', '\n如何看待主播余小 C 打到峡谷之巅最强王者 900 点?\n', '\n如何评价90年代幻想娱乐小说(以富士见Fantasia文库为代表)在轻小说发展史中的位置?乐于见到《流浪地球》票房大卖?\n', '\n郭德纲对张云雷是怎样的态度?\n', '\n你最讨厌什么梗?\n', '\n说下你使用后大爱恨不得安利全世界的护肤品/化妆品?\n', '\n高中作文如何得到 50 以上的分数?\n'] |
发现这里添加了heades,不然爬虫知乎发现页会报错。
POST
常用方式
1 | data ={'name':'germey', 'age':'22'} |
运行结果
1 | { |
可以发现,我们成功获得了返回结果,其中 form 部分就是提交的数据,这就证明POST请求成功发送了 。
**相应
在这里我们看下常用的相应方式
r = requests.get(‘http://www.jianshu.com‘)
print(r.status_code)
print(r.headers)
print(r.cookies)
print(r.text)
print(r.content)
print(r.history)
print(r.json())
其他的方法和这类似,大家可以相继试一下
原文链接: http://yoursite.com/2019/02/27/爬虫系列之requests的使用/
版权声明: 转载请注明出处.