网页flash抓取器 mac(没有添加头部信息模拟成浏览器Request对象赋值去访问网页)
优采云 发布时间: 2021-10-04 10:24网页flash抓取器 mac(没有添加头部信息模拟成浏览器Request对象赋值去访问网页)
为什么要添加header信息,因为有时候有些网页有反爬虫设置,导致无法获取正常网页。在这里,在代码的头部添加一个头部信息来模拟浏览器访问网页。
无代码添加头信息
import urllib2
url = "http://blog.51cto.com/lsfandlinux/2046467"
file = urllib2.urlopen(url)
html = file.read()
print html
接下来,添加标题信息。首先在浏览器中打开百度,然后查看网页的header信息,找到User-Agent。这是我们用来模拟浏览器并复制它的信息。
然后在代码中添加header信息的变量来存放对应的headers信息,定义的格式为(“User-Agent”,具体信息)。
在代码中添加头信息有两种方式:
方法一:使用build_opener()添加
import urllib2
url = "http://blog.51cto.com/lsfandlinux/2046467"
headers = ("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36")
opener = urllib2.build_opener()
opener.addheaders = [headers]
file = opener.open(url)
html = file.read()
print html
我们使用opener.open(url)打开一个网页,这个opener是一个带有header信息的操作。
方法二:使用add_header()添加
import urllib2
url = "http://blog.51cto.com/lsfandlinux/2046467"
req = urllib2.Request(url)
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36")
file = urllib2.urlopen(req)
html = file.read()
print html
方法是创建一个Request对象并通过urllib2中的Request赋值给变量req,然后使用add_header添加头信息。