一.爬虫简单介绍

爬虫是什么?

爬虫是首先使用模拟浏览器访问网站获取数据,然后通过解析过滤获得有价值的信息,最后保存到到自己库中的程序.

爬虫程序包括哪些模块?

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爬虫基础应用----爬取无反爬视频网站相关推荐

  1. python代码html显示数据_Python爬虫基础之认识html和学习数据提取(上)

    我:我已经学会了基本的python,接下来可以学什么鸭? 惨绿青年:接下来可以学习制作python爬虫了,但还是需要学习相关的知识. 我:什么知识鸭? 惨绿青年:网页的相关知识.我们看到的网页一般是h ...

  2. python爬虫爬取58网站数据_Python爬虫,爬取58租房数据 字体反爬

    Python爬虫,爬取58租房数据 这俩天项目主管给了个爬虫任务,要爬取58同城上福州区域的租房房源信息.因为58的前端页面做了base64字体加密所以爬取比较费力,前前后后花了俩天才搞完. 项目演示 ...

  3. python win32ui选取文件夹_Python爬虫基础之认识html和学习数据提取(上)

    我:我已经学会了基本的python,接下来可以学什么鸭? 惨绿青年:接下来可以学习制作python爬虫了,但还是需要学习相关的知识. 我:什么知识鸭? 惨绿青年:网页的相关知识.我们看到的网页一般是h ...

  4. python爬空气污染实时数据_python爬虫之静态网页——全国空气质量指数(AQI)爬取...

    利用的python库,最近最流行的requests,BeautifulSoup. requests:用于下载html BeautifulSoup:用于解析 下面开始分析:要获取所有城市的aqi,就要进 ...

  5. python发短信 金山_Python爬虫基础练习(四) 金山翻译爬取(进阶篇)

    上一篇文章金山翻译爬取(基础篇)讲到爬取金山翻译,并且实现了简单词汇的爬取,但是我们的报错信息都是一长串字符,就像这样 当然这个报错还是很容易看懂的,"列表索引超出范围",但是我们 ...

  6. 利用python爬取58同城简历数据_python爬虫程序 58同城二手交易信息爬取

    本脚本分为5部分: spider_main    主程序 url_manager    url管理器 html_downloader    网页下载器 html_parser    网页解析器 htm ...

  7. python采集直播间数据_Python 爬虫进阶必备 | 某直播数据分析平台加密参数 sign 分析...

    今日网站 aHR0cHMlM0EvL3d3dy5ocmRqeXVuLmNvbS8lM0YlMjMvYW5jaG9yTGlzdA== 被催更了,最近临近特殊时期,所以比较忙,趁着晚上有空来一发. 抓包分 ...

  8. Python爬虫第二课 Selenium介绍和反爬技术

    selenium的介绍 知识点: 了解 selenium的工作原理 了解 selenium以及chromedriver的安装 掌握 标签对象click点击以及send_keys输入 1. seleni ...

  9. python爬虫视频 下载 黑马_Python爬虫能爬视频么(python爬虫零基础视频教程)

    Python爬虫能爬视频么 他视频没有的,但是跑了之后你要处理这个视频,就是问题的?你只需要,得到视频的播放地址,还是要把视频完整的下载到本地的.如果只是爬那个视频的下载地址,很简单,如果要下载的话, ...

最新文章

  1. 抽象工厂————三层架构
  2. rails安装与卸载
  3. SAP智能机器人流程自动化解决方案
  4. Ajax 模糊查询的简单实现
  5. vector的逆序输出(神奇的vector)
  6. Morphia - mongodb之ORM框架
  7. linux 下使用genymotion
  8. Decorator 装饰模式
  9. 【渝粤教育】国家开放大学2019年春季 233学前儿童语言教育 参考试题
  10. HDU 4417 划分树写法
  11. java获取上周任意一天的日期
  12. dockerfile制作docker镜像
  13. 计算机科学导论第五版第二章答案,《计算机科学导论》课后习题答案
  14. 教你不要光驱一样重装系统
  15. MDK5新建stm32l0xx(Cortex-M0)工程步骤
  16. Ubuntu安装wine
  17. 修改Fedora 18的窗口背景颜色为浅绿色
  18. Android Camera基本架构介绍
  19. 1080P or 4K?——明基 TK800M 4K HDR家用投影体验
  20. esp-01s接入天猫精灵与relay继电器控制电灯

热门文章

  1. 【正则表达式】正则匹配注释
  2. 【Flink】Flink 流处理 Sum操作 Table is not an append-only table. Use the toRetractStream() in order to hand
  3. maven编译:target/surefire-reports for the individual test results
  4. hadoop的Avro数据序列化系统
  5. spark学习-42-Spark的driver理解和executor理解
  6. 神奇的 SQL 之 ICP → 索引条件下推
  7. 先出报表还是先计提所得税_合并报表投资时点的评估增值和内部交易到底该如何理解????...
  8. android 事件参数传递,android-databinding – 使用android DataBinding库如何将参数传递给绑定事件...
  9. Javascript的两种“单引号”
  10. JDK1.5提供的原子类原理及使用