urllib 库的基本使⽤:
所谓⽹⻚抓取,就是把 URL 地址中指定的⽹络资源从⽹络流中读取出来,保存到本地。 在 Python2 中,我们使⽤ urllib2 这个组件来抓取⽹⻚。在 python3.x 中被改为 urllib.request。
urlopen:
import urllib.request #导入爬虫用到的模块
response=urllib.request.urlopen("http://www.baidu.com")#利用这个模块的urlopen()功能打开百度网址
html=response.read()#把打开的网址读出来,赋值给html
print(html)#打印出来html中的内容
内容如下:
#由于内容过多就不显示具体内容,我们通过测试html中的长度来证明
print(len(html))
#结果为
153227
实际上,如果我们在浏览器上打开百度主⻚, 右键选择“查看源代码”,你会发现,跟我们刚才打印出来的是⼀模⼀样。也就是说, 上⾯的4⾏代码就已经帮我们把百度的⾸⻚的全部代码爬了下来。
User-Agent:
但是这样直接⽤python的 urllib.request给⼀个⽹站发送请求的话,确实略有些唐突了,就好⽐,⼈家每家都有⻔,你以⼀个路⼈的身份直接闯进去显然不是很礼貌。所以有⼀些站点不喜欢被程序(⾮⼈为访问)访问,有可能会拒绝