利用python对有规律的url进行视频爬取中遇到的小问题及解决方案

在尝试使用Python爬取某视频网站的视频时,遇到了两个问题。一是爬取到的视频只有10s且清晰度低,通过分析url发现并修复了这个问题,将短链接改为完整视频链接。二是当爬取到40+页时,由于可能的反爬机制,程序报错。问题尚未解决,期待通过bs4或正则表达式等方法找到解决策略。欢迎高手指导。

人生苦短,请用Python。
今天在某视频门户网站(某字母站)看了一集教大家利用Python中的requests、etree和xpath进行视频爬取。照着视频一行行敲完代码之后,尝试着运行了一下,果然开始爬取了,但运行一段时间后,出现了两个小问题。
①爬取到的视频最长只有10s且清晰度很低,但是在网页上打开并不是这样的。(已解决)
②总共200+页的视频,在爬取到40+页的时候,程序报错,是模块中的错误。初步怀疑是网站的反爬机制造成的。(此问题还未解决,解决后补充)
首先贴上代码:

import requests
from lxml import etree

# 面向对象设计模式
class Spider(object):
    def __init__(self):
        self.offset = 1
    def start_work(self):
        for self.offset in range(1,224):
            print('正在爬取第%d页....' % self.offset)
            response = requests.get(url = 'https://ibaotu.com/shipin/7-0-0-0-0-' + str(self.offset) + '.html')
            html = response.text
            html = etree.HTML(html)
            video_src = html.xpath('//div[@class="video-play"]/video/@src')
            video_title = html.xpath('//span[@class="video-title"]/text()')
            # 使得获取完整的视频连接而不是被压缩过的视频连接
            real_src = []
            for i in video_src:
                current_src = i[:-8]
                real
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值