#目前只掌握这些,如果有大神有更简单的操作可以进行点评,谢谢。
import requests
from random import choices
import time #导入时间模块
def getHTML():
try:
x = ['Mozilla/5.0','MQQBrowser/26 Mozilla/5.0','Opera/9.80']
headers = {
'User-Agent':choices(x)
}
a = input("请输入搜索内容:")
for i in range(3):
url = "https://www.baidu.com/s?wd={}&pn={}&oq=csdn&tn=62095104_41_oem_dg&ie=utf-8&usm=2&rsv_pq=e503b7b60000d53c&rsv_t=59c2oI4wfiN4Z6s58SzBiwmxayrSnhHrzl13ND5FGv0Vc%2FIrgnPzTY%2Fy9JNZPZWx8BO2%2B%2B9Fdd35".format(a,i) #进行多网页爬取,每个百度页面会显示10个url,经过多次实验得出 pn={}参数为每页显示的链接数量,通过for循环可取得多页。属于静态网页爬取
r = requests.get(url,headers = headers)
r.raise_for_status
r.encoding = r.apparent_encoding
time.sleep(1) #此处加上睡眠一秒是防止百度弹出验证页面,不加时间百度会认为是爬取软件进行爬取,超过人为操作点击速度。
return r.text
except:
return "爬取失败"
def main():
if __name__ == '__main__':
print(getHTML())
main()
爬虫学习的第一天(requests简单的框架--初阶3)
最新推荐文章于 2024-09-14 14:25:22 发布