时间:2021-05-22
python爬虫-梨视频短视频爬取(线程池)
示例代码
import requestsfrom lxml import etreeimport randomfrom multiprocessing.dummy import Pool# 多进程要传的方法,多进程pool.map()传的第二个参数是一个迭代器对象# 而传的get_video方法也要有一个迭代器参数def get_video(dic): headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36 Edg/88.0.705.56' } video_data = requests.get(url = dic['url'] , headers = headers).content print(dic['name']+'开始下载') # 有的文件名中包含空格,在并发执行时会报错,这里用随机数给文件起名了 #path = dic['name']+'.mp4'会报错 path = "./lishipin/"+str(int(random.random()*100)) + '.mp4' with open(path,'wb') as fp: fp.write(video_data) print(dic['name']+'下载成功')def main(): # web_url:梨视频官网 web_url = 'https:///' urllist.append(prefix+i) return urllist# 获取视频链接并下载(写入到硬盘)def getvideo(url): res=requests.get(url,headers) mp4url=re.findall('srcUrl="(.*?\.mp4)"',res.text,re.S)[0] video=requests.get(mp4url) m = hashlib.md5() m.update(url.encode('utf-8')) m.update(str(time.time()).encode('utf-8')) filename = r'%s.mp4' % m.hexdigest() print(filename) with open("/home/tony/文档/爬虫视频/%s.mp4"%filename,'wb') as f: f.write(video.content)def main(): video_urllist=geturls(mainurl) for i in video_urllist: getvideo(i)if __name__=='__main__': main()到此这篇关于python爬虫线程池案例详解(梨视频短视频爬取)的文章就介绍到这了,更多相关python爬虫梨视频短视频爬取内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本实例主要进行线程池创建,多线程获取、存储视频文件梨视频:利用线程池进行视频爬取#爬取梨视频数据importrequestsimportrefromlxmlim
普通方法:爬取梨视频importreimporttimeimportrandomimportrequestsfromlxmlimportetreestart_t
本文实例讲述了python爬虫之线程池和进程池功能与用法。分享给大家供大家参考,具体如下:一、需求最近准备爬取某电商网站的数据,先不考虑代理、分布式,先说效率问
之前我们使用lxml对梨视频网站中的视频进行了下载,感兴趣的朋友点击查看吧。下面我用scrapy框架对梨视频网站中的视频标题和视频页中对视频的描述进行爬取分析:
这里向大家分享一下python爬虫的一些应用,主要是用爬虫配合简单的GUI界面实现视频,音乐和小说的下载器。今天就先介绍如何实现一个动态视频下载器。爬取电影天堂