Python爬取百度热榜

这是一个非常基础的爬虫;使用Python爬取百度热榜的标题和链接;

python爬取百度热榜

完整源码

# 需有requests、lxml库
import requests
from urllib import parse
from lxml import etree

#请求头必须有合理的 User-Agent 值
headers = {
    'User-Agent':'请自行填入User-Agent'
}

response = requests.get('https://www.baidu.com/',headers=headers)

html = response.text

document = etree.HTML(html)

for content in document.xpath('//textarea [@id="hotsearch_data"]/text()'):
    for item in eval(content).get('hotsearch'):
        #打印标题
        print(item.get('pure_title'))
        #打印链接
        print(parse.unquote(item.get('linkurl')))

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/python-get-baidu-hotsearch.html

分类: 计算机技术
推荐阅读:
Rust is_x86_feature_detected宏的用法和示例 在Rust中,is_x86_feature_detected宏用于在运行时检查CPU是否支持特定的指令集;例如,你可以用它来检查CPU是否支持SSE、AVX等指令集;
TypeError: can't take floor or mod of complex number. 在Python中,复数类型不支持地板除(floor division)和取模(modulo)运算。因此,在尝试对复数执行//、%或divmod()函数运算时,会引发TypeError异常,提示can't take floor or mod of complex number.
Matlab中如何表示无穷大 在MATLAB中,您可以使用关键字inf(不区分大小写)来表示正无穷大,-inf表示负无穷大。
rand()和srand()函数在C语言中的应用 本文通过示例介绍rand()函数和srand()函数在C语言中的用法;
Rust获取命令行参数 所谓的命令行参数,是指程序在命令行或SHELL上运行时后跟的参数;Rust语言中获取命令行参数的方法如下:
C语言中struct和typedef struct的用法和不同 在C语言中struct和typedef struct创建的结构体并没有什么不同,只是使用typedef后可以为结构体创建一个别名;