常用的爬虫模块及使用方法
python的urllib和urllib2模块都做与请求URL相关的操作,但他们提供不同的功能。他们两个最显著的差异如下:
urllib2可以接受一个Request对象,并以此可以来设置一个URL的headers,但是urllib只接收一个URL。这意味着,你不能伪装你的用户代理字符串等。
分析:
注:打开https://www.tmall.com/网站,再按F12,可以查看该网页的源代码。
例:打开天猫网站
referer:有的源代码有,有的没有;它代表的是你是从哪个页面跳转到这个页面的,即:你的下一个页面。
user-agent:每个源代码都有这一项;
cookie:绝大部分是通过我们访问页面的时候给我们返回来的;
urllib是不能进行反爬的;
urllib模块可以提供进行urlencode的方法,该方法用于GET查询字符串的生成,urllib2的不具有这样的功能。这就是urllib与urllib2经常在一起使用的原因。
例:
import urllib,urllib2
#https://www.baidu.com/s?ie=utf-8&f=8(这是一个真正的完整的我们可以请求的参数)
a={
‘username’:’qiangzi’,
‘password’:’123456’
}