Xpath爬取Crossin教室的文章详情页的阅读数等示例(二)

一、爬取目标描述:

从Crossin编程教室的站点的爬虫练习专栏展示的文章列表页(爬虫练习)分别进入每一篇文章的详细页面,获得每一篇文章的阅读数、点赞数和评论数并打印。

二、代码示例:

python 复制代码
from lxml import etree
import requests


def pages_spider(id):
    headers = {
        'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 '
                      'Safari/537.36'
    }

    url = 'http://111.230.211.102:8080/tasks/article/' + str(id)
    res = requests.get(url, headers=headers)
    html = res.text
    selector = etree.HTML(html)

    result = selector.xpath('//*[contains(@class,"ppx-main-block")]/p/text()')
    result2 = selector.xpath('//*[contains(@class,"col-xs-12")]/h5/span/text()')
    print(result)
    print(result2)


for i in range(1, 9):
    pages_spider(i)

三、代码总结:

本次代码不像前一篇博文那样只是将爬取代码按照爬取流程的逻辑写了出来。而是将某个页面的爬取流程放入了函数体中。实现爬取流程逻辑的模块化。这样就可以用for循环来循环调用函数获取所有详情页的文章内容及获得每篇文章的阅读数、点赞数和评论数。

相关推荐
u0109147606 小时前
CSS组件库如何快速扩展_通过Sass @extend继承基础布局
jvm·数据库·python
baidu_340998826 小时前
Golang怎么用go-noescape优化性能_Golang如何使用编译器指令控制逃逸分析行为【进阶】
jvm·数据库·python
m0_678485456 小时前
如何利用虚拟 DOM 实现无痕刷新?基于 VNode 对比的状态保持技巧
jvm·数据库·python
qq_342295826 小时前
CSS如何实现透明背景效果_通过RGBA色彩模式控制透明度
jvm·数据库·python
TechWayfarer6 小时前
知乎/微博的IP属地显示为什么偶尔错误?用IP归属地查询平台自检工具3步验证
网络·python·网络协议·tcp/ip·网络安全
Greyson16 小时前
CSS如何处理超长文本换行问题_结合word-wrap属性
jvm·数据库·python
justjinji6 小时前
如何批量更新SQL数据表_使用UPDATE JOIN语法提升效率
jvm·数据库·python
小江的记录本6 小时前
【网络安全】《网络安全常见攻击与防御》(附:《六大攻击核心特性横向对比表》)
java·网络·人工智能·后端·python·安全·web安全
贵沫末6 小时前
python——打包自己的库并安装
开发语言·windows·python
weixin_580614007 小时前
MySQL存储过程中如何防止SQL注入_使用参数化查询规范
jvm·数据库·python