python实现的爬取电影下载链接功能示例


Posted in Python onAugust 26, 2019

本文实例讲述了python实现的爬取电影下载链接功能。分享给大家供大家参考,具体如下:

#!/usr/bin/python
#coding=UTF-8
import sys
import urllib2
import os
import chardet
from bs4 import BeautifulSoup
reload(sys)
sys.setdefaultencoding("utf-8")
#从电影html页面中获取视频下载地址
def get_movie_download_url(html):
  soup=BeautifulSoup(html,'html.parser')
  fixed_html=soup.prettify()
  td=soup.find('td',attrs={'style':'WORD-WRAP: break-word'})
  url_a=td.find('a')
  url_a=url_a.string
  return url_a
#从电影html页面中获取电影标题
def get_movie_title(html):
  soup=BeautifulSoup(html,'html.parser')
  fixed_html=soup.prettify()
  title=soup.find('h1')
  title=title.string
  return title
#访问url,返回html页面
def get_html(url):
  req=urllib2.Request(url)
  req.add_header('User-Agent','Mozilla/5.0')
  response=urllib2.urlopen(url)
  html=response.read()
  return html
#从电影列表页,获取电影的url,拼接好,存到列表后返回
def get_movie_list(url):
  m_list = []
  html = get_html(url)
  soup=BeautifulSoup(html,'html.parser')
  fixed_html=soup.prettify()
  a_urls=soup.find_all('a',attrs={'class':'ulink'})
  host = "http://www.ygdy8.net"
  for a_url in a_urls:
    m_url=a_url.get('href')
    m_list.append(host+m_url)
  return m_list
#存入txt文件
def file_edit(wr_str):
  f1 = open(r'e:\down_load_url.txt','a')
  f1.write(wr_str)
  f1.close()
#传入电影url的列表集合,获取下载地址,并写入文件
def write_to_txt(a_urls):
  for a_url in a_urls:
    html=get_html(a_url)
    html=html.decode('GBK')
    write_title=get_movie_title(html)
    write_url=get_movie_download_url(html)
    file_edit(write_title+"\n")
    file_edit(write_url+"\n")
    file_edit("\n")
#传入页数,返回这几页的url列表
def get_pages_url(num):
  urls_list = []
  url="http://www.ygdy8.net/html/gndy/dyzz/list_23_"
  for n in range(1,num+1):
    new_url = url+str(n)+".html"
    urls_list.append(new_url)
  return urls_list
if __name__=='__main__':
  pages = 2 #打算爬取几页电影
  p_url = get_pages_url(pages)
  for i in p_url:
    write_to_txt(get_movie_list(i))#执行写入
  print "done"

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
用Python的pandas框架操作Excel文件中的数据教程
Mar 31 Python
python常用知识梳理(必看篇)
Mar 23 Python
Python网络编程 Python套接字编程
Sep 13 Python
解决python删除文件的权限错误问题
Apr 24 Python
简单谈谈python基本数据类型
Sep 26 Python
浅析Python函数式编程
Oct 06 Python
Django web框架使用url path name详解
Apr 29 Python
Python re正则表达式元字符分组()用法分享
Feb 10 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
python上下文管理的使用场景实例讲解
Mar 03 Python
4种非常实用的python内置数据结构
Apr 28 Python
Python使用itchat模块实现简单的微信控制电脑功能示例
Aug 26 #Python
Python3.6实现根据电影名称(支持电视剧名称),获取下载链接的方法
Aug 26 #Python
Golang GBK转UTF-8的例子
Aug 26 #Python
利用python实现周期财务统计可视化
Aug 25 #Python
Python爬虫运用正则表达式的方法和优缺点
Aug 25 #Python
numpy求平均值的维度设定的例子
Aug 24 #Python
Python实现滑动平均(Moving Average)的例子
Aug 24 #Python
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
thinkPHP实现表单自动验证
2014/12/24 PHP
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
2018/10/15 PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
2019/07/20 PHP
FCK调用方法..
2006/12/21 Javascript
javascript 网页跳转的方法
2008/12/24 Javascript
js 巧妙去除数组中的重复项
2010/01/25 Javascript
javascript 嵌套的函数(作用域链)
2010/03/15 Javascript
用jquery实现的模拟QQ邮箱里的收件人选取及其他效果(一)
2011/01/06 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
js钢琴按钮波浪式图片排列效果代码分享
2015/08/26 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
vuejs父子组件之间数据交互详解
2017/08/09 Javascript
mac中利用NVM管理不同node版本的方法详解
2017/11/08 Javascript
详解Vue中watch的高级用法
2018/05/02 Javascript
JS实现的小火箭发射动画效果示例
2018/12/08 Javascript
vue实现微信二次分享以及自定义分享的示例
2019/03/20 Javascript
mpvue性能优化实战技巧(小结)
2019/04/17 Javascript
详解Vue.js中引入图片路径的几种方式
2019/06/17 Javascript
基于Taro的微信小程序模板消息-获取formId功能模块封装实践
2019/07/15 Javascript
微信小程序开发中var that =this的用法详解
2020/01/18 Javascript
在Python中处理列表之reverse()方法的使用教程
2015/05/21 Python
Python如何读取MySQL数据库表数据
2017/03/11 Python
Python中单、双下划线的区别总结
2017/12/01 Python
Sanic框架应用部署方法详解
2018/07/18 Python
python视频按帧截取图片工具
2019/07/23 Python
django美化后台django-suit的安装配置操作
2020/07/12 Python
2015年元旦文艺汇演主持词
2014/03/26 职场文书
十佳文明家庭事迹
2014/05/25 职场文书
党的群众路线对照检查材料
2014/08/27 职场文书
标准版离职证明书
2014/09/12 职场文书
2014年大学团支部工作总结
2014/12/02 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
新员工入职感言范文!
2019/07/04 职场文书