前言:
- 我从这部分内容开始逐步根据官方文档介绍教程二中提到的一些库;
- 爬虫的基础是与网页建立联系,而我们可以通过get和post两种方式来建立连接,而我们可以通过引入urllib库[在python3的环境下导入的是urllib;而python2的环境下是urllib和urllib2]或者requests库来实现,从程序的复杂度和可读性考虑,requests库显然更能满足程序员的需求,但是我没有找到这个库详细的中文讲解,这也是我写这篇文章的原因。
- 所有的参考资料均来源于官方文档http://docs.python-requests.org/en/master/user/quickstart/#make-a-request
- 文中可能有一些拓展知识,不喜欢可以略读过去。
如何使用requests库
- 首先我们需要导入requests包
import requests
2. 然后我们可以通过get或者post(两者有一定的区别,请根据自己的需求合理的选择)来请求页面:
req_1 = requests.get('https://m.weibo.cn/status/4278783500356969')
req_2 = requests.post('https://m.weibo.cn/status/4278783500356969')
- 这里多说一下我们通过这两个方式得到了什么?
- Now, we have a Response object called req_1/req_2. We can get all the information we need from this object.
- 这是官方文档中给出的说明,我们得到的是一个对象,里面包含了我们请求的页面的代码(可以print出来看一下)及相关信息,而我们可以通过'.'操作符来访问这个对象内的信息,在文末我会详细的归纳出来【注1】.
- 再拓展一下我们对一个url还有哪些操作?
req = requests.put('http://httpbin.org/put', data = {'key':'value'})
req = requests.delete('http://httpbin.org/delete')
req = requests.head('http://httpbin.org/get')
req = requests.options('http://httpbin.org/get')
3. 我们多数情况下还需要在请求中添加一些参数,如果你接触过urllib的话,你就会惊叹于requests的方便: