网络编程
位置:首页>> 网络编程>> Python编程>> Python获取百度热搜的完整代码

Python获取百度热搜的完整代码

作者:国家一级保护咸鱼  发布时间:2023-09-06 11:33:32 

标签:Python,百度热搜

好久没写了,就把上课做的一个小东西拿出来分享一下吧。
百度网页截图如下 ↓↓↓

Python获取百度热搜的完整代码

程序运行输出结果截图 ↓↓↓

Python获取百度热搜的完整代码

上代码 ↓↓↓


from lxml import etree
from lxml import html
import requests

headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36'}
page = requests.get("https://www.baidu.com",headers=headers)
html = page.text
#print(source1)
# 从字符串解析
element = etree.HTML(html)

# 元素列表,获取的方式列出了如下两种
# ps = element.xpath('//*[@id="hotsearch-content-wrapper"]/li/a/span[2]')
ps = element.xpath('//*[@class="title-content-title"]')

#热搜文本内容
text = []
if len(ps) > 0:
 for p in ps:
   #输出节点的文本
   text1 = p.text
   text.append(text1)
else:
 print("空")

x = element.xpath('//*[@class="s-hotsearch-content"]/li')

#热搜文本对应的排名
index = []
for x1 in x:
 #获取节点的属性
 index1 = x1.get("data-index")
 index.append(index1)

print(text)  
print(index)

#定义一个对文本和排名进行匹配的函数,返回一个字典型数据
def PP(index_array,text_array):
 x = {}
 i = 0
 for index_a in index_array:
   #index_a = int(index_a)

x[index_a] = text_array[i]
   i = i + 1
 return x

re_text = PP(index,text)
#对字典性数据按key进行排序,即key=lambda re:re[0],排序完成后再转换为字典型数据
last_text = dict(sorted(re_text.items(),key=lambda re:re[0]))

来源:https://blog.csdn.net/qq_43225919/article/details/115442300

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com