普通的爬虫发送给服务器端的信息只有对于该页面的访问请求。,但是服务器并不知道发送这个请求使用的浏览器,操作系统,硬件平台等信息,
而缺失这些信息的请求往往都是非正常的访问,例如爬虫.
有些网站为了防止这种非正常的访问,会验证请求信息中的UserAgent(它的信息包括硬件平台、系统软件、应用软件和用户个人偏好),
如果UserAgent存在异常或者是不存在,那么这次请求将会被拒绝(如上错误信息所示)
所以可以尝试在请求中加入UserAgent的信息
import requests
from bs4 import BeautifulSoup
url='https://www.zhihu.com/explore'
ua={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'}
soup=BeautifulSoup(requests.get(url,headers=ua).text,'html.parser')
for link in soup.find_all('a',class_='ExploreSpecialCard-title'):
print(link.text)