python爬虫,简单的爬取小说网站的阅读排名

本文介绍如何使用Python的requests和lxml库抓取特定网站上的玄幻小说排行榜信息,包括排名、小说名和字数,并通过XPath进行数据解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现在大部分网站感觉都上了反扒的东西,直接写底层很难得到准确结果

首先要安装requests,lxml
pip方式:

pip install requests
pip install lxml

具体代码:

import requests
from lxml import etree

#构造自己的数据结果类
class xuanhuan:
    def __init__(self,ranking,name,numOfWords):
        self.ranking = ranking
        self.name = name
        self.numOfWords = numOfWords

html = requests.get('http://top.hengyan.com/xuanhuan')
selector = etree.HTML(html.text)
position = '/html/body/div[2]/div[2]/div[3]/ul[2]'
#/html/body/div[2]/div[2]/div[3]     /ul[2]/li[3]
#/html/body/div[2]/div[2]/div[3]     /ul[3]/li[3]

#使用xpath来进行筛选结果,将html解析成树,比直接用正则表达式及简单。
content = selector.xpath('/html/body/div[2]/div[2]/div[3]/ul')
#循环遍历其中的元素
for i in range(1,len(content)+1):
    ranking = selector.xpath('/html/body/div[2]/div[2]/div[3]/ul['+str(i)+']/li[1]/text()')
    name = selector.xpath('/html/body/div[2]/div[2]/div[3]/ul['+str(i)+']/li[3]/text()')
    numOfWords = selector.xpath('/html/body/div[2]/div[2]/div[3]/ul['+str(i)+']/li[4]/text()')
    newXuanHuan = xuanhuan(ranking,name,numOfWords)
    print(newXuanHuan.ranking,end=' ')
    print(newXuanHuan.name,end=' ')
    print(newXuanHuan.numOfWords)

运行结果:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值