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生成随机数的方法
Jan 14 Python
讲解Python中fileno()方法的使用
May 24 Python
开源软件包和环境管理系统Anaconda的安装使用
Sep 04 Python
Python模块的加载讲解
Jan 15 Python
pycharm的console输入实现换行的方法
Jan 16 Python
python实现爬山算法的思路详解
Apr 09 Python
python之yield和Generator深入解析
Sep 18 Python
详解Python实现进度条的4种方式
Jan 15 Python
Python3加密解密库Crypto的RSA加解密和签名/验签实现方法实例
Feb 11 Python
Python 防止死锁的方法
Jul 29 Python
python+requests接口自动化框架的实现
Aug 31 Python
Python尝试实现蒙特卡罗模拟期权定价
Apr 21 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
同台服务器使用缓存APC效率高于Memcached的演示代码
2010/02/16 PHP
谨慎使用PHP的引用原因分析
2012/09/06 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
2016/11/28 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
2017/02/05 PHP
PHP分页显示的方法分析【附PHP通用分页类】
2018/05/10 PHP
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
利用JQuery和Servlet实现跨域提交请求示例分享
2014/02/12 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
Javascript基础教程之比较操作符
2015/01/18 Javascript
jQuery实现dialog设置focus焦点的方法
2015/06/10 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
2016/11/07 Javascript
nodejs前端自动化构建环境的搭建
2017/07/26 NodeJs
基于Two.js实现星球环绕动画效果的示例
2017/11/06 Javascript
vue2.0 常用的 UI 库实例讲解
2017/12/12 Javascript
在create-react-app中使用css modules的示例代码
2018/07/31 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
微信公众平台获取access_token的方法步骤
2019/03/29 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
python模块之re正则表达式详解
2017/02/03 Python
Django 前后台的数据传递的方法
2017/08/08 Python
Python3使用PyQt5制作简单的画板/手写板实例
2017/10/19 Python
解决python中画图时x,y轴名称出现中文乱码的问题
2019/01/29 Python
Python3.5面向对象编程图文与实例详解
2019/04/24 Python
pandas中ix的使用详细讲解
2020/03/09 Python
KIKO MILANO英国官网:意大利知名化妆品和护肤品品牌
2017/09/25 全球购物
印尼第一大家居、生活和家具电子商务:Ruparupa
2019/11/25 全球购物
Nike墨西哥官网:Nike MX
2020/08/30 全球购物
中西医结合临床医学专业大学生自荐信
2013/09/28 职场文书
师范生的个人求职信范文
2014/01/04 职场文书
绩效工资分配方案
2014/01/18 职场文书
2015年采购工作总结
2015/04/10 职场文书
生日宴会家属答谢词
2015/09/29 职场文书
ipad隐藏软件app图标方法
2022/04/19 数码科技
muduo TcpServer模块源码分析
2022/04/26 Redis