python 爬虫抓取百度热搜

实现思路:

第1步、在百度热搜页获取热搜元素

元素类名为category-wrap_iQLoo 即我们只需要获取类名category-wrap_为前缀的元素

第2步、编写python脚本实现爬虫

复制代码
import requests
from bs4 import BeautifulSoup

url = 'https://top.baidu.com/board?tab=realtime'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36'
}
response = requests.get(url, headers=headers)
response.encoding = response.apparent_encoding
soup = BeautifulSoup(response.text, 'html.parser')
hot_searches = []
# 使用CSS选择器匹配类名前缀为'category-wrap_'的元素
category_wrap_prefix_elements = soup.select('[class^="category-wrap_"]')
# 遍历并打印这些元素
for element in category_wrap_prefix_elements:
    title = element.find('div', class_='c-single-text-ellipsis').get_text().strip()
    link = element.find('a')['href']
    print(title, link)
    hot_searches.append({title, link})
print(hot_searches)

控制台打印

相关推荐
2143965几秒前
CSS Grid布局如何解决图片溢出网格单元_设置object-fit与网格尺寸
jvm·数据库·python
qq_654366981 分钟前
C#怎么实现动态加载DLL C#如何在运行时动态加载和卸载程序集调用其中的方法【进阶】
jvm·数据库·python
2301_764150562 分钟前
WooCommerce 用户登录状态控制元素显隐的 CSS 实现方案
jvm·数据库·python
m0_743623922 分钟前
CSS如何解决响应式布局中文字溢出_通过text-overflow-ellipsis处理
jvm·数据库·python
2401_835956813 分钟前
Go语言中 & 与 -:指针取址与解引用的完整解析
jvm·数据库·python
2401_837163894 分钟前
如何为容器内多个列表实现统一滚动条
jvm·数据库·python
m0_674294645 分钟前
C#怎么清空Dictionary字典_C#如何管理内存集合【基础】
jvm·数据库·python
2402_854808376 分钟前
MongoDB GridFS分片时选择什么键比较好
jvm·数据库·python
2301_796588507 分钟前
mysql如何统计不同状态的数量_使用group by配合count函数
jvm·数据库·python
qq_189807039 分钟前
HTML怎么实现快捷跳转顶部_HTML固定悬浮锚点按钮【介绍】
jvm·数据库·python