Python爬取百度搜索结果页面并输出标题和链接
# 爬取百度10页的标题 import urllib.request import re import urllib.parse from bs4 import BeautifulSoup def build_onepage_crawl_function(keyword, number_of_page): #构建请求头 user_agent_header = ("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0)") opener_build = urllib.request.build_opener() opener_build.addheaders = [user_agent_header] #对搜索关键词进行编码 encoded_keyword = urllib.parse.quote(keyword) # 通过for循环爬去每一页 for i in range(int(number_of_page)): url = "https://www.baidu.com" number_of_page = i * 10 # 构造 &pn= print("百度搜索页面链接:",number_of_page) url = url + "/s?wd=" + encoded_keyword + "&pn=" + str(number_of_page) # 完整的url包括关键词说页数,这里keyword本身就是str print(url) #构造get请求中的url original_html = opener_build.open(url, timeout = 2).read().decode("utf-8","ignore") soup = BeautifulSoup(original_html ,'html.parser') for title in soup.select('.tts-title a'): print(title.text) #输入关键词以及需要爬取的页数 keyword_input = input("请输入关键词:") number_of_page_input = input("请输入页数:") build_onepage_crawl_function(keyword_input, number_of_page_input)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)