Python网络爬虫——模拟浏览器

1、简介

有些网站为了防止别人恶意采集信息,所以进行了反爬虫的设置。这个时候,就需要模拟成浏览器去访问这些网站。

2、应用

就比如我们模拟浏览器去爬取百度首页(添加User-Agent信息)。有如下两种方式

方法一:使用build_opener()修改报头

# coding:utf-8
from urllib import request
url = "http://www.baidu.com"
headers = ("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:61.0) ")
file = request.urlopen(url)
opener = request.build_opener() # 创建自定义的opener对象并赋值给变量opener
opener.addheaders = [headers]  # 设置对应的头信息
data = opener.open(url).read()  # 使用opener对象的open()方法打开对应的网址

方法二:使用add_header()添加报头

# coding:utf-8
from urllib import request
url = "http://www.baidu.com"
req = request.Request(url)  # 创建Request对象并赋值给req
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:61.0) ") # 添加报头
data = request.urlopen(req).read()

 

你可能感兴趣的:(Python,爬虫,Python网络爬虫)