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循环来循环调用函数获取所有详情页的文章内容及获得每篇文章的阅读数、点赞数和评论数。

相关推荐
顾林海3 小时前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱6 小时前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽11 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码11 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱20 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵1 天前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio1 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户0332126663671 天前
使用 Python 从零创建 Word 文档
python
Csvn1 天前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python
曲幽1 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate