【爬虫】 03 模拟浏览器访问网页&使用代理池访问网页

用自己的请求头 headers (我的不可用,已做过处理)

如何找到自己的 headers ?

  1. F12 或者 开发者工具
  2. 找到 Network
  3. Name 这一栏点击一个文件
  4. 找到右侧的 Request Headers
  5. 向下滑动找到 User-Agent 即为自己的 header
  6. 再找不到就百度!!!
import urllib.request

url = 'https://www.baidu.com/'

# 模拟请求头
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) '
                         'Chrome/80.0.3987.132 Safari/537.6'}
# 设置一个请求体
req = urllib.request.Request(url, headers=headers)

# 发起请求
response = urllib.request.urlopen(req)
data = response.read().decode('utf-8')
print(data)

代理池法

百度搜索 user-agent

搜到的存到列表中随机使用即可

agent_list = [
    'Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko',
    'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)',
    'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SE 2.X MetaSr 1.0; SE 2.X MetaSr 1.0; .NET CLR '
    '2.0.50727; SE 2.X MetaSr 1.0)',
    'User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)'
]

agentStr = random.choice(agent_list)
req = urllib.request.Request(url)
# 向请求体里添加了 User-Agent
req.add_header('User-Agent',agentStr)
response = urllib.request.urlopen(req)
print(response.read().decode('utf-8'))
发布了96 篇原创文章 · 获赞 103 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_38114487/article/details/104707576