python爬视频网站数据_python爬虫基础应用----爬取无反爬视频网站
一.爬虫简单介绍
爬虫是什么?
爬虫是首先使用模拟浏览器访问网站获取数据,然后通过解析过滤获得有价值的信息,最后保存到到自己库中的程序.
爬虫程序包括哪些模块?
python中的爬虫程序主要包括,requests请求库,seleium请求库,xpath和BeautSoup4解析库,
爬取校花网需要使用到哪些模块?
校花网结构简单,而且没有任何防爬手段,所在只需要使用requests就可以完成了=.=.
二.具体操作
1.获得网页
网站地址:http://www.xiaohuar.com/
我要爬取的视频网页主页为http://www.xiaohuar.com/list-3-0.html
下一页为http://www.xiaohuar.com/list-3-1.html
总共有五页所以,拼接生成五页主页.
url = 'http://www.xiaohuar.com/list-3-{}.html'
for line in range(5):
index_url= url.format(line)
2.主页解析
主页中跳转到详情页的连接在这里
#使用正则可以获得详情页网址.
re.findall('
3.详情页解析
详情页中的视频连接在这个位置
#正则匹配获得视频的网址
video_url = re.findall('',detail_page,re.S)#顺便获得视频的名字
video_name = re.findall('
(.*?)
',detail_page,re.S)
4.保存视频
将上获得的网址与视频名传入函数,打开网址将内容保存到video中 "视频名字".mp4的文件中,
defsave_video(video_dic):try:
video_url=video_dic.get('url')
video_name=video_dic.get('name')
video=requests.get(video_url)
with open(r'video/%s.mp4'%video_name,'wb') as f:
f.write(video.content)
f.flush()exceptException:pass
5.全部执行代码
importrequestsimportreimportuuid#一.获取网页
url='http://www.xiaohuar.com/'
defget_page(url):
index_res=requests.get(url)returnindex_res.text#二.解析网站#解析主页
defparse_index(index_res):
detail_url_list= re.findall('
defparse_detail(detail_page):
video_url= re.findall('',detail_page,re.S)
video_name= re.findall('
(.*?)
',detail_page,re.S)print(video_url)print(video_name)ifvideo_url:
video_url=video_url[0]ifvideo_name:
video_name=video_name[0]return {'url': video_url, 'name': video_name}else:
video_name=uuid.uuid4()return {'url':video_url,'name':video_name}#三.保存视频
defsave_video(video_dic):try:
video_url=video_dic.get('url')
video_name=video_dic.get('name')
video=requests.get(video_url)
with open(r'video/%s.mp4'%video_name,'wb') as f:
f.write(video.content)
f.flush()exceptException:pass
if __name__=='__main__':
url= 'http://www.xiaohuar.com/list-3-{}.html'
for line in range(5):
index_url=url.format(line)print(index_url)#获得主页文本
index_res =get_page(index_url)#解析主页,获得详情页网址列表
detail_url_list =parse_index(index_res)print(detail_url_list)for detail_url indetail_url_list:
detail_page=get_page(detail_url)
video_dic=parse_detail(detail_page)
save_video(video_dic)
python爬视频网站数据_python爬虫基础应用----爬取无反爬视频网站相关推荐
- python代码html显示数据_Python爬虫基础之认识html和学习数据提取(上)
我:我已经学会了基本的python,接下来可以学什么鸭? 惨绿青年:接下来可以学习制作python爬虫了,但还是需要学习相关的知识. 我:什么知识鸭? 惨绿青年:网页的相关知识.我们看到的网页一般是h ...
- python爬虫爬取58网站数据_Python爬虫,爬取58租房数据 字体反爬
Python爬虫,爬取58租房数据 这俩天项目主管给了个爬虫任务,要爬取58同城上福州区域的租房房源信息.因为58的前端页面做了base64字体加密所以爬取比较费力,前前后后花了俩天才搞完. 项目演示 ...
- python win32ui选取文件夹_Python爬虫基础之认识html和学习数据提取(上)
我:我已经学会了基本的python,接下来可以学什么鸭? 惨绿青年:接下来可以学习制作python爬虫了,但还是需要学习相关的知识. 我:什么知识鸭? 惨绿青年:网页的相关知识.我们看到的网页一般是h ...
- python爬空气污染实时数据_python爬虫之静态网页——全国空气质量指数(AQI)爬取...
利用的python库,最近最流行的requests,BeautifulSoup. requests:用于下载html BeautifulSoup:用于解析 下面开始分析:要获取所有城市的aqi,就要进 ...
- python发短信 金山_Python爬虫基础练习(四) 金山翻译爬取(进阶篇)
上一篇文章金山翻译爬取(基础篇)讲到爬取金山翻译,并且实现了简单词汇的爬取,但是我们的报错信息都是一长串字符,就像这样 当然这个报错还是很容易看懂的,"列表索引超出范围",但是我们 ...
- 利用python爬取58同城简历数据_python爬虫程序 58同城二手交易信息爬取
本脚本分为5部分: spider_main 主程序 url_manager url管理器 html_downloader 网页下载器 html_parser 网页解析器 htm ...
- python采集直播间数据_Python 爬虫进阶必备 | 某直播数据分析平台加密参数 sign 分析...
今日网站 aHR0cHMlM0EvL3d3dy5ocmRqeXVuLmNvbS8lM0YlMjMvYW5jaG9yTGlzdA== 被催更了,最近临近特殊时期,所以比较忙,趁着晚上有空来一发. 抓包分 ...
- Python爬虫第二课 Selenium介绍和反爬技术
selenium的介绍 知识点: 了解 selenium的工作原理 了解 selenium以及chromedriver的安装 掌握 标签对象click点击以及send_keys输入 1. seleni ...
- python爬虫视频 下载 黑马_Python爬虫能爬视频么(python爬虫零基础视频教程)
Python爬虫能爬视频么 他视频没有的,但是跑了之后你要处理这个视频,就是问题的?你只需要,得到视频的播放地址,还是要把视频完整的下载到本地的.如果只是爬那个视频的下载地址,很简单,如果要下载的话, ...
最新文章
- 抽象工厂————三层架构
- rails安装与卸载
- SAP智能机器人流程自动化解决方案
- Ajax 模糊查询的简单实现
- vector的逆序输出(神奇的vector)
- Morphia - mongodb之ORM框架
- linux 下使用genymotion
- Decorator 装饰模式
- 【渝粤教育】国家开放大学2019年春季 233学前儿童语言教育 参考试题
- HDU 4417 划分树写法
- java获取上周任意一天的日期
- dockerfile制作docker镜像
- 计算机科学导论第五版第二章答案,《计算机科学导论》课后习题答案
- 教你不要光驱一样重装系统
- MDK5新建stm32l0xx(Cortex-M0)工程步骤
- Ubuntu安装wine
- 修改Fedora 18的窗口背景颜色为浅绿色
- Android Camera基本架构介绍
- 1080P or 4K?——明基 TK800M 4K HDR家用投影体验
- esp-01s接入天猫精灵与relay继电器控制电灯
热门文章
- 【正则表达式】正则匹配注释
- 【Flink】Flink 流处理 Sum操作 Table is not an append-only table. Use the toRetractStream() in order to hand
- maven编译:target/surefire-reports for the individual test results
- hadoop的Avro数据序列化系统
- spark学习-42-Spark的driver理解和executor理解
- 神奇的 SQL 之 ICP → 索引条件下推
- 先出报表还是先计提所得税_合并报表投资时点的评估增值和内部交易到底该如何理解????...
- android 事件参数传递,android-databinding – 使用android DataBinding库如何将参数传递给绑定事件...
- Javascript的两种“单引号”
- JDK1.5提供的原子类原理及使用