本人比較喜欢看美剧。尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接。并依照先后顺序写入到文本文件,供下载工具进行批量下载。比方用迅雷。先打开迅雷,然后复制全部下载链接到剪切板,迅雷会监视剪切板来新建全部任务。假设迅雷没有自己主动监视,能够自己点击新建然后粘贴链接。Python源码例如以下。用的是Python3 :

# python3 实现,以下的实例 3 部美剧爬完大概要 10 s
import urllib.request
import redef get_links(url, name='yyets'):data = urllib.request.urlopen(url).read().decode()pattern = '"(ed2k://\|file\|[^"]+?\.(S\d+)(E\d+)[^"]+?

1024X\d{3}[^"]+?)"' linksfind = set(re.findall(pattern, data)) linksdict = {} total = len(linksfind) for i in linksfind: linksdict[int(i[1][1:3]) * 100 + int(i[2][1:3])] = i with open(name + '.txt', 'w') as f: for i in sorted(list(linksdict.keys())): f.write(linksdict[i][0] + '\n') print(linksdict[i][0]) print("Get download links of: ", name, str(total)) if __name__ == '__main__': #---------- 越狱、无耻之徒、权力的游戏--------------------------- get_links('http://www.yyets.com/resource/10004', 'prision_break') get_links('http://www.yyets.com/resource/10760', 'shameless') get_links('http://www.yyets.com/resource/d10733','Game_of_Thrones') print('All is okay!')

这个 python 爬虫比較短,就用到了 urllib.request 和 re 这两个模块,前者负责抓取网页,后者负责解析文本。

人人影视并没有限制爬虫訪问。所以这里无需改动 HTTP head的 User-Agent ,对于某些屏蔽爬虫的网页,就须要改动下 User-Agent  这个值了。一个做法例如以下:用 urllib.request 中 Request 类的构造函数构造一个 Request 对象,构造函数中给自己给 headers (字典)中 User-Agent 属性 赋值,然后将这个对象传入到本模块的 urlopen() 中。就能够将爬虫伪装成一个浏览器进行网页抓取了。比方。CSDN 就是屏蔽了爬虫的。须要改动一下 User-Agent 的值,例如以下:

import urllib.requesturl = 'http://blog.csdn.net/csdn'
head={'User-Agent': 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)'}
req = urllib.request.Request(url, headers=head)
data = urllib.request.urlopen(req, timeout=2).read().decode()
print(data)

抓取完网页就是对 HTML 文档的解析了。这里使用的是正則表達式模块,对于特定单一的内容很方便。假设须要较复杂的解析能够用 pyquery 或者 Beautiful Soup, 它们是用Python写的 HTML/XML 的解析器。当中 pyquery 是 jquery 风格,更加的好用。

关于正則表達式这里推荐一个工具 RegexBuddy ,拥有强大的正則表達式调试功能,上面脚本中的正則表達式就使用了这个工具进行调试。这篇关于Python正则的博文非常不错: Python 正則表達式指南。

想进一步加强爬虫的功能,能够用爬虫框架 Scrapy,这是 Scrapy 的官方tutoria 。还有就是,假设网页内容多是 javascript 生成。那么就须要一个 js 引擎了,PyV8 能够拿来试试,再有就是基于 js 做爬虫。如用 casperJS 和 phantomJS.

【地址:http://blog.csdn.net/thisinnocence/article/details/39997883】

转载于:https://www.cnblogs.com/wzzkaifa/p/6749343.html

Python 爬虫批量下载美剧 from 人人影视 HR-HDTV相关推荐

  1. Node.js 爬虫批量下载美剧 from 人人影视 HR-HDTV

    这两天发现了一个叫 看知乎的网站,是知乎的 苏莉安做的,其中爬虫使用的 Node.js.这里就针对 上一篇博客中的美剧小爬虫,改用 nodejs 进行实现一下,体验一下强大的 Node.js. 如果之 ...

  2. automagica 调用迅雷批量下载美剧

    一.概述 使用automagica 调用迅雷,批量下载美剧.这里以<老友记第一季>为例. 网站链接如下: https://www.9tata.com/content/14371.html ...

  3. python爬虫批量下载“简谱”

    python讨论qq群:996113038 导语: 上次发过一篇关于"python打造电子琴"的文章,从阅读量来看,我们公众号的粉丝里面还是有很多对音乐感兴趣的朋友的.于是,今天我 ...

  4. 新一配:perl循环调用python爬虫批量下载喜马拉雅音频

    新一配:perl循环调用python爬虫批量下载喜马拉雅音频 手机下载喜马拉雅音频后,获得的音频文件虽然可以转成mp3格式,但其文件名却是一长串字符串,无法辨别是哪一集,网上找了各种工具,都有局限性, ...

  5. 【爬虫实战项目】Python爬虫批量下载音乐飙升榜并保存本地(附源码)

    前言 今天给大家介绍的是Python爬虫批量下载音乐飙升榜并保存本地,在这里给需要的小伙伴们代码,并且给出一点小心得. 首先是爬取之前应该尽可能伪装成浏览器而不被识别出来是爬虫,基本的是加请求头,但是 ...

  6. 【爬虫实战项目】Python爬虫批量下载评书音频并保存本地(附源码)

    前言 今天给大家介绍的是Python爬虫批量下载评书音频并保存本地,在这里给需要的小伙伴们代码,并且给出一点小心得. 首先是爬取之前应该尽可能伪装成浏览器而不被识别出来是爬虫,基本的是加请求头,但是这 ...

  7. Python爬虫爬取美剧网站

    一直有爱看美剧的习惯,一方面锻炼一下英语听力,一方面打发一下时间.之前是能在视频网站上面在线看的,可是自从广电总局的限制令之后,进口的美剧英剧等貌似就不在像以前一样同步更新了. 但是,作为一个宅dia ...

  8. python爬虫 批量下载高清大图

    文章目录 前言 下载免费高清大图 下载带水印的精选图 代码与总结 前言 在上一篇写文章没高质量配图?python爬虫绕过限制一键搜索下载图虫创意图片!中,我们在未登录的情况下实现了图虫创意无水印高清小 ...

  9. 第二弹!python爬虫批量下载高清大图

    文章目录 前言 下载免费高清大图 下载带水印的精选图 代码与总结 前言 在上一篇写文章没高质量配图?python爬虫绕过限制一键搜索下载图虫创意图片!中,我们在未登录的情况下实现了图虫创意无水印高清小 ...

最新文章

  1. 2022-2028年中国加气站行业市场研究及前瞻分析报告
  2. 【组队学习】【29期】4. 吃瓜教程——西瓜书+南瓜书
  3. 【Verilog HDL 训练】第 02 天
  4. zTree的拖拽排序
  5. linux编程综合案例
  6. wp7使用Cocos2d-X for XNA制作一个塔防类游戏 (二)在游戏中加入地图和怪物。(上)
  7. hdu-5068 Harry And Math Teacher
  8. Go的sync.WaitGroup(二):WaitGroup让主程序与协程全部都执行 并且全部执行完成
  9. mysql生成uui mybatis_mybatis----基础
  10. ASP.NET WebApi 基于JWT实现Token签名认证
  11. Qt文档阅读笔记-QIODevice解析及Audio Example实例解析
  12. 转载 2020-02-18 在KVM主机和虚拟机之间共享目录
  13. create-react-app 支持多入口
  14. python图书管理实训报告总结_图书管理系统实训总结
  15. 做一名「技术掮客」去变现自己的技术
  16. Orcad capture
  17. 硬盘老是显示正在计算机,电脑开机总是提示正在扫描和修复驱动器解决措施
  18. 带你简化理解Spring 基于注解配置的原理
  19. HDU 1512 Monkey King 左偏树 + 并查集
  20. 保存OpenGL窗口每一帧代码段(freeimage库)

热门文章

  1. 【Shell】20天学会shell脚本命令(2)变量的详解
  2. 湖北汽车工业学院c语言,第六届C语言程序设计颁奖典礼举行
  3. gem install gollum
  4. webp格式转换成jpg,webp转jpg方法步骤
  5. 关于VS2008的MFCGridCtrl的使用方法-冻结首行首列
  6. 强强联合!天翼物联与软通动力签署战略合作协议
  7. PCB genesis方槽加内角槽孔实现方法
  8. 标注案例分享:自动驾驶图像语义分割丨曼孚科技
  9. 主流AR眼镜参数对比、AR SDK最全功能特性对比
  10. Caffe编译踩坑(一):/usr/include/boost/system/error_code.hpp:233:21: error: looser throw specifier