爬虫案例—爬取ChinaUnix.net论坛板块标题

爬虫案例---爬取ChinaUnix.net论坛板块标题

ChinaUnix.net论坛网址:http://bbs.chinaunix.net

目标:抓取各个板块的标题和内容的标题

网站截图:

利用requests和xpath实现目标。源码如下:

python 复制代码
import requests
from lxml import etree


headers = {
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36',}

url = 'http://bbs.chinaunix.net'

res = requests.get(url, headers=headers)

html = res.text

tree = etree.HTML(html)
div_lst = tree.xpath('//div[@class="mn"]/div/table')

for div in div_lst[:6]:
    print('板块名称:', div.xpath('./tbody[1]/tr/td//h2/a/text()')[0])
    for tr in div.xpath('./tbody[2]/tr'):
        for td in tr.xpath('./td'):
            # if td.xpath('./table'):
            #     print(td.xpath('./table/tr/td[2]/a/text()'))
            table_lst = td.xpath('./table')
            if table_lst:
                print(td.xpath('./table/tr/td[2]/a/text()')[0],end='\t')

        print('')
    print('=' * 50)

运行结果如下:

python 复制代码
抓取ChinaUnix板块标题.py

板块名称: IT运维
Docker	监控及自动化运维技术	集群和高可用	
服务器应用	虚拟化与云服务	分布式文件系统(FastDFS)	
数据安全	服务器及硬件技术	存储备份	
网络技术	初创企业IT架构选型	中间件技术	
Hadoop和大数据技术	
==================================================
板块名称: 操作系统
Linux新手园地	Linux系统管理	Windows系统	
BSD	AIX	AS400	
Solaris	HP-UX	其他UNIX	
移动操作系统	Mac OS X	
==================================================
板块名称: 程序设计
C/C++	Linux环境编程	内核源码	
Shell	Perl	Java	
PHP	Python	Ruby	
嵌入式开发	驱动开发	Web开发	
架构设计	CPU与编译器	软件配置管理	
Golang	Erlang	
==================================================
板块名称: 数据库技术
MySQL	Sybase	Oracle	
PostgreSQL	DB2	Informix	
数据仓库与数据挖掘	NoSQL技术	
==================================================
板块名称: 综合交流区
IT资讯	IT职业生涯	IT图书与评论	
二手交易	下载共享	
==================================================
板块名称: 站务及频道
站务交流	博客SNS站务交流区	CU活动专区	
频道交流区	
==================================================

Process finished with exit code 0
相关推荐
“AI国潮设计-小江”7 小时前
【AIGC实战】Python+SDXL批量生成“潮汕英歌舞不倒翁”IP | 角色一致性与多场景融合方案,附完整代码
开发语言·人工智能·python·prompt·aigc
Linux_cy7 小时前
服务器管理工具哪个好用?我用了七八个
运维·服务器·javascript·python·ssh·面板·gmssh
MoRanzhi12037 小时前
第6篇(下)· 使用 PyQt5 实现 2048 高性能计算版:统一运行控制与跨模式安全交接
python·pyqt·进程管理·状态机·软件架构·并发控制·数据一致性
code tsunami7 小时前
【无标题】
开发语言·python
CodeGL8 小时前
10、Python基础之进程和线程
开发语言·python
TechWayfarer9 小时前
PHP漏洞被利用,怎么揪出攻击IP?
开发语言·python·tcp/ip·网络安全·php
2601_9679801110 小时前
Python列表操作方法详解
python·数据类型·修改·列表操作·功能汇总
Patrick在香港10 小时前
台风在变少,来香港的没有
python·数据分析·香港·开放数据·热带气旋
qq_4069810310 小时前
大白话rust系列09 函数调用两次有什么错?
开发语言·python·rust
benchmark_cc11 小时前
QuantDash 安装成功后,如何验证 Python 环境可以正常导入 SDK?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash