爬虫的功能就是模仿浏览器发送信息,从而获取网址的内容。
response.url是请求url地址,response.request.url是响应url地址,如果网站设置重定向,那么请求url和响应url会有不同。
response.content类型为bytes,修改编码类型为response.content。decode("utf-8")
{'User-Agent': 'python-requests/2.19.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '/', 'Connection': 'keep-alive'}。我们没有使用代理,然而,默认代理是python-requests/2.19.1,这显然告诉服务器我们不是浏览器,因此返回值如上非常少。
正常应该是如下(很多已经折叠没有展开):
获取User-Agent:User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36
# -*- coding: utf-8 -*-
# @Time : 2019/10/3 09:50
# @Author : 币行者
# @Email : xypip@qq.com
# @File : test2.py
import requests
headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36"}
response = requests.get("https://www.baidu.com", headers=headers)
print(response.content.decode())
现在就完成初步欺骗浏览器,获取到全部内容了。