怎么用爬虫爬资源下载电影
1. python爬虫抓取电影top20排名怎么写
初步接触python爬虫(其实python也是才起步),发现一段代码研究了一下,觉得还比较有用处,Mark下。
上代码:
#!/usr/bin/python#coding=utf-8#Author: Andrew_liu#mender:cy"""
一个简单的Python爬虫, 用于抓取豆瓣电影Top前100的电影的名称
Anthor: Andrew_liu
mender:cy
Version: 0.0.2
Date: 2017-03-02
Language: Python2.7.12
Editor: JetBrains PyCharm 4.5.4
"""import stringimport reimport urllib2import timeclass DouBanSpider(object) :
"""类的简要说明
主要用于抓取豆瓣Top100的电影名称
Attributes:
page: 用于表示当前所处的抓取页面
cur_url: 用于表示当前争取抓取页面的url
datas: 存储处理好的抓取到的电影名称
_top_num: 用于记录当前的top号码
"""
def __init__(self):
self.page = 1
self.cur_url = "h0?start={page}&filter=&type="
self.datas = []
self._top_num = 1
print u"豆瓣电影爬虫准备就绪, 准备爬取数据..."
def get_page(self, cur_page):
"""
根据当前页码爬取网页HTML
Args:
cur_page: 表示当前所抓取的网站页码
Returns:
返回抓取到整个页面的HTML(unicode编码)
Raises:
URLError:url引发的异常
"""
url = self.cur_url try:
my_page = urllib2.urlopen(url.format(page=(cur_page - 1) * 25)).read().decode("utf-8") except urllib2.URLError, e: if hasattr(e, "code"): print "The server couldn't fulfill the request."
print "Error code: %s" % e.code elif hasattr(e, "reason"): print "We failed to reach a server. Please check your url and read the Reason"
print "Reason: %s" % e.reason return my_page def find_title(self, my_page):
"""
通过返回的整个网页HTML, 正则匹配前100的电影名称
Args:
my_page: 传入页面的HTML文本用于正则匹配
"""
temp_data = []
movie_items = re.findall(r'<span.*?class="title">(.*?)</span>', my_page, re.S) for index, item in enumerate(movie_items): if item.find(" ") == -1:
temp_data.append("Top" + str(self._top_num) + " " + item)
self._top_num += 1
self.datas.extend(temp_data) def start_spider(self):
"""
爬虫入口, 并控制爬虫抓取页面的范围
"""
while self.page <= 4:
my_page = self.get_page(self.page)
self.find_title(my_page)
self.page += 1def main():
print u"""
###############################
一个简单的豆瓣电影前100爬虫
Author: Andrew_liu
mender: cy
Version: 0.0.2
Date: 2017-03-02
###############################
"""
my_spider = DouBanSpider()
my_spider.start_spider()
fobj = open('/data/moxiaokai/HelloWorld/cyTest/blogcode/top_move.txt', 'w+') for item in my_spider.datas: print item
fobj.write(item.encode("utf-8")+'
')
time.sleep(0.1) print u"豆瓣爬虫爬取完成"if __name__ == '__main__':
main()
运行结果:
2. 用Python爬虫爬取爱奇艺上的VIP电影视频,是违法行为吗
属于违法行为,情节严重者,爱奇艺将有权对您追究法律责任
3. Python中怎么用爬虫爬
Python爬虫可以爬取的东西有很多,Python爬虫怎么学?简单的分析下:
如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的编程语言提供越来越多的优秀工具,让爬虫变得简单、容易上手。
利用爬虫我们可以获取大量的价值数据,从而获得感性认识中不能得到的信息,比如:
知乎:爬取优质答案,为你筛选出各话题下最优质的内容。
淘宝、京东:抓取商品、评论及销量数据,对各种商品及用户的消费场景进行分析。
安居客、链家:抓取房产买卖及租售信息,分析房价变化趋势、做不同区域的房价分析。
拉勾网、智联:爬取各类职位信息,分析各行业人才需求情况及薪资水平。
雪球网:抓取雪球高回报用户的行为,对股票市场进行分析和预测。
爬虫是入门Python最好的方式,没有之一。Python有很多应用的方向,比如后台开发、web开发、科学计算等等,但爬虫对于初学者而言更友好,原理简单,几行代码就能实现基本的爬虫,学习的过程更加平滑,你能体会更大的成就感。
掌握基本的爬虫后,你再去学习Python数据分析、web开发甚至机器学习,都会更得心应手。因为这个过程中,Python基本语法、库的使用,以及如何查找文档你都非常熟悉了。
对于小白来说,爬虫可能是一件非常复杂、技术门槛很高的事情。比如有人认为学爬虫必须精通 Python,然后哼哧哼哧系统学习 Python 的每个知识点,很久之后发现仍然爬不了数据;有的人则认为先要掌握网页的知识,遂开始 HTMLCSS,结果入了前端的坑,瘁……
但掌握正确的方法,在短时间内做到能够爬取主流网站的数据,其实非常容易实现,但建议你从一开始就要有一个具体的目标。
在目标的驱动下,你的学习才会更加精准和高效。那些所有你认为必须的前置知识,都是可以在完成目标的过程中学到的。这里给你一条平滑的、零基础快速入门的学习路径。
1.学习 Python 包并实现基本的爬虫过程
2.了解非结构化数据的存储
3.学习scrapy,搭建工程化爬虫
4.学习数据库知识,应对大规模数据存储与提取
5.掌握各种技巧,应对特殊网站的反爬措施
6.分布式爬虫,实现大规模并发采集,提升效率
4. python scrapy爬虫豆瓣的“加载更多” 应该怎么爬到所有的电影
不说具体,说思路。
你要分析 当你点击 加载更多 时,浏览器都做了什么(他是怎么取回 "更多数据"的)
然后在scrapy中模拟这一过程!
5. 怎么下载爬虫啊
爬虫是网络采集的一种方式,是采取数据的。我用过的一个方法,给你介绍下,那就是HTTP代理。HTTP代理主要作用就是可以更换我们电脑的IP,而爬取数据的时候,如果一直用一个IP就容易被屏蔽,对于代理的认识也有一些误区。
爬虫的时候,使用闪云代理HTTP代理,可以选择高匿名代理,不仅可以隐藏真是的IP,也可以躲避服务器,像一个真正的用户在访问一样。而透明代理和普通代理并不好用,虽然也有效果,但会被服务器识别出来使用代理IP。因此不适合进行爬虫业务,好了,聊到这了,你也应该知道你说的那种下载爬虫其实就是一个程序而已。
6. 毕业设计:android 网络电影 爬虫 抓包
建议你换一个, 网络爬虫抓包这些开发都非常复杂,还不如来点简单实用的,本人做了很多android的应用开发, 可以勾通一下, 看看哪个比较适合。
7. 论坛里需要VIP账号才能下载资源,怎么用网络爬虫获取它的下载地址.先给50 ,答对了再加。速度解决
现在主流的论坛主要是使用DZ论坛,具有完善的附件管理和权限控制,没有明显的漏洞可以利用,这些文件都是动态通过程序进行下载的,不是你找到了目录就能通过HTTP方式进行下载的。
与其你在这里这么笼统的说要下载,不如说出你想要什么资源,这样说不定可以帮你进行替代资源的查找,特别是程序文档类的,经常不止一个地方有。
Good Luck~
8. 如何用爬虫爬取网页上的数据
用爬虫框架Scrapy, 三步
定义item类
开发spider类
开发pipeline
如果你想要更透的信息,你可以参考《疯狂python讲义》
9. 如何爬取别人网站的视频资源放到自己的网站
通过视频的URL,使用KeepVid能从YouTube获取到视频文件,而且提供多种格式的视频文件形式下载。
目前支持的视频网站有(其中就有我朝的tudou):
youtube.com(youtu.be)
megavideo.com
dailymotion.com
twitvid.com
tudou.com
videoweed.es
stagevu.com
vbox7.com
zshare.net
v.9you.com
altervideo.net
clip.vn
divxstage.eu
Java applet做的,研究研究对你应该有帮助。
KeepVidDownloader.java
10. java网络爬虫爬取web视频资源,并下载怎么做
/*这是个下载图片的爬虫,给你参考一下*/
import java.io.File;
import java.net.URL;
import java.net.URLConnection;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Scanner;
import java.util.UUID;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class DownMM {
public static void main(String[] args) throws Exception {
//out为输出的路径,注意要以\\结尾
String out = "D:\\JSP\\pic\\java\\";
try{
File f = new File(out);
if(! f.exists()) {
f.mkdirs();
}
}catch(Exception e){
System.out.println("no");
}
String url = "http://www.mzitu.com/share/comment-page-";
Pattern reg = Pattern.compile("<img src=\"(.*?)\"");
for(int j=0, i=1; i<=10; i++){
URL uu = new URL(url+i);
URLConnection conn = uu.openConnection();
conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko");
Scanner sc = new Scanner(conn.getInputStream());
Matcher m = reg.matcher(sc.useDelimiter("\\A").next());
while(m.find()){
Files.(new URL(m.group(1)).openStream(), Paths.get(out + UUID.randomUUID() + ".jpg"));
System.out.println("已下载:"+j++);
}
}
}
}