python收集网页中的翻页

使用Python进行网络爬虫时,通过检查最后一页是否存在‘下一页’链接,动态构造下一页URL,从而实现对整个网页数据的全面抓取。
摘要由CSDN通过智能技术生成
要用采集器采集网页中的图片,由于网址里面的下一页是javascript形式的,此采集器无法判断,所以先用python把网址搜集起来。
观察到每翻一页,网址后面的页码数+1。为提高效率,减少访问数,先找到可见的最后一个链接,根据此链接页码数,拼凑出前面网址。

然后访问最后链接,查找是否有“下一页”字段,如果有,就拼凑出下一页网址。


#!/usr/bin/python
# -*- coding: UTF-8 -*-
import requests
from lxml import etree
def find_url(url):
    global count,newUrl

    #找到最后一个课程链接,取出页码,拼凑1至此页码的网址并添加到列表newUrl。
    #XPath规则可在chrome中查看。
    r = requests.get(url+'001.htm')
    count += 1
    html = etree.HTML(r.text)
    #找到最后一个可见链接
    result = html.xpath('//div[@class="xxxxxx"]/a[last()]/@href')
    #取出链接中的页码数
    maxNumber = int(result[0].split('/')[-1].split('.')[0])
    print maxNumber
    #拼凑前面网址添加到列表newUrl
    for i in xrange(1,maxNumber+1):
        nextUrl = "{0}{1:0>3}.htm".format(url , i)
        
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要实现Python爬虫的网页滑动翻页,可以使用Selenium库来模拟浏览器操作。以下是一种实现方式: 1. 首先,确保您已经安装了Selenium库。可以使用以下命令进行安装: ``` pip install selenium ``` 2. 导入所需的库和模块: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys import time ``` 3. 创建一个WebDriver对象,并打开一个浏览器窗口: ```python driver = webdriver.Chrome() # 使用Chrome浏览器,您也可以选择其他浏览器 ``` 4. 使用`get()`方法打开目标网页: ```python driver.get("https://example.com") # 替换成您要爬取的网页地址 ``` 5. 找到需要滑动翻页的元素,并使用`send_keys()`方法模拟键盘操作: ```python body = driver.find_element_by_tag_name("body") body.send_keys(Keys.END) # 模拟按下End键,向下滑动一页 ``` 6. 使用`time.sleep()`方法等待页面加载完成: ```python time.sleep(2) # 等待2秒钟,可以根据需要进行调整 ``` 7. 重复步骤5和步骤6,直到滑动到最底部或者达到您所需的翻页次数。 8. 最后,关闭浏览器窗口: ```python driver.quit() ``` 注意:这是一个简单的示例,实际应用可能需要根据具体的网页结构和需求进行适当的修改。另外,滑动翻页可能会触发网页的动态加载,您可能需要等待一段时间以确保页面内容完全加载出来。 希望对您有帮助!如有任何问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值