电影资源站python爬虫源码
平时比较喜欢看电影,每次去资源站搜索感觉很不方便,闲来无事就写了个小虫把电影站点给爬了。。废话不多说,看源码。
避免广告,资源站地址隐藏。
第一步,抓取所有电影链接,保存到表movieall中
from html.parser import HTMLParser
import urllib.request
import sys
import sqlite3
import time
import re
types = [['Dongzuodianying',99],['Kehuandianying',32],['Kongbudianying',84],['Xijudianying',121],['Aiqingdianying',54],['Juqingdianying',275],['Zhanzhengdianying',14]];
baseurl= "https://www.*****.com/"def write_to_db(name,mtype,url,img):conn = sqlite3.connect("D:\\movie\\movie.db")sql = '''insert into movieall(name,type,url,imgurl) values(:ssname,:sstype,:ssurl,:ssimg)'''conn.cursor().execute(sql,{'ssname':name, 'sstype':mtype, 'ssurl':url,'ssimg':img}) conn.commit()conn.cursor().close()conn.close()for stype in types: for i in range(1,stype[1],1):url=baseurl+stype[0]+"/chart/"+str(i)+".html"print(url)html = urllib.request.urlopen(url).read().decode("gbk")re_li= r'<li>(.*?)</li>'li_list= re.findall(re_li,html,re.S|re.M)for li in li_list:#print(li)info= r'<a href="(.*?)" title="(.*?)"><img src="(.*?)" class'infolist= re.findall(info,li,re.S|re.M)if len(infolist)>0:#print(infolist[0][0])write_to_db(infolist[0][1],stype[0],infolist[0][0],infolist[0][2])
第二步,遍历表movieall,解析电影信息并保存到表movieinfo中,包括电影名称,类型,海报地址,下载地址,下载类型,电影简介等信息。
from html.parser import HTMLParser
import urllib.request
import urllib.error
import sys
import sqlite3
import time
import re
types = [['Dongzuodianying',99],['Kehuandianying',32],['Kongbudianying',84],['Xijudianying',121],['Aiqingdianying',54],['Juqingdianying',275],['Zhanzhengdianying',14]];
baseurl= "https://www.******.com/"def write_to_db(name,mtype,url,img,downurl,downtitle,downtype,desc):conn = sqlite3.connect("D:\\movie\\movieall.db")sql = '''insert into movieinfo(name,type,url,imgurl,downurl,downtitle,downtype,moviedesc) values(:ssname,:sstype,:ssurl,:ssimg,:ssdownurl,:ssdowntitle,:ssdowntype,:ssdesc)'''conn.cursor().execute(sql,{'ssname':name, 'sstype':mtype, 'ssurl':url,'ssimg':img,'ssdownurl':downurl,'ssdowntitle':downtitle,'ssdowntype':downtype,'ssdesc':desc}) conn.commit()conn.cursor().close()conn.close()conn = sqlite3.connect("D:\\movie\\movie.db")
cur = conn.cursor()
sqlstr='SELECT name,type,url,imgurl,rowid FROM movieall'
for row in cur.execute(sqlstr):print (row[0],row[1],row[4])url=row[2]try:html = urllib.request.urlopen(url).read().decode("gbk") #re_div= r'<div class="loldytt">(.*?)</div>'re_div= r'<a href="((thunder|magnet|ed2k|ftp).*?)" title="(.*?)" target="_self">'div_list= re.findall(re_div,html,re.S|re.M)re_desc= r'<div class="neirong">(.*?)</div>'desc_list= re.findall(re_desc,html,re.S|re.M)#print(desc_list) for div in div_list:#print(div)write_to_db(row[0],row[1],row[2],row[3],div[0],div[2],div[1],desc_list[0]);except urllib.error.HTTPError as e:print(e.code)except UnicodeDecodeError as e:print(e)time.sleep(0.1)
cur.close()
conn.close()
好了,开跑吧,效率虽然不怎么样,不过还是达到目的了,大概抓了3万部电影,8万条记录。不知道有生之年能不能看完。。。
如果也有喜欢电影的朋友请自取:
https://pan.baidu.com/s/1v5sTa6ylChUGkc00oYWu_A 提取码: unxk
电影资源站python爬虫源码相关推荐
- Project 2 :Python爬虫源码实现抓取豆瓣电影爱情电影Top200并保存到文件
基于python3.6-pycharm编写的,都已经调试过了,欢迎大家提出交流意见. 关于一些基础的数据网页分析(比如为什么是这个url)没有过多赘述,看不懂的自行百度. 源码可以直接拷贝运行. 转载 ...
- python爬虫源码项目_32个Python爬虫实战项目,满足你的项目慌(带源码)
写在前面 学习Python爬虫的小伙伴想成为爬虫行业的大牛么? 你想在网页上爬取你想要的数据不费吹灰之力么? 那么亲爱的小伙伴们肯定需要项目实战去磨练自己的技术,毕竟没有谁能随随便便成功! 小编前段时 ...
- python爬虫源码附注解_Python小白写的三个入门级的爬虫(附代码和注释)
Python小白写的三个入门级的爬虫(附注释) 写在前面的话:作者目前正在学习Python,还是一名小白,所以注释可以会有些不准确的地方,望谅解. 这三个小爬虫不是很难,而且用处可能也不大,主要还是锻 ...
- python爬虫源码怎么使用_Python爬虫具体应该怎么使用?
1.首先,什么时候我们需要爬虫呢? 当我们需要某网站上的海量数据的时候,会发现,如果人工去把几百页,每页几十条到几百条的数据一条一条地复制下来,就太费时费力了,甚至根本就不可能.但是你做研究却需要这样 ...
- python爬虫源码_Python—爬虫:王者荣耀全套皮肤【附源码】
怎么获取全套皮肤?用钱买,或者用爬虫爬取下来~虽然后者不能穿.这个案例稍微复杂一点,但是一个非常值得学习的项目. 具体实现思路: 分析网页源代码结构 找到合适的入口 穷举访问并解析 爬取所有英雄所有皮 ...
- python 爬虫源码 selenium并存储数据库_使用pythonSelenium爬取内容并存储MySQL数据库的实例图解...
这篇文章主要介绍了python Selenium爬取内容并存储至MySQL数据库的实现代码,需要的朋友可以参考下 前面我通过一篇文章讲述了如何爬取CSDN的博客摘要等信息.通常,在使用Selenium ...
- android 爬虫获取邮箱,python爬虫源码学习:爬虫smtp邮件实时推送(2)
却道天凉好个秋~ 这篇文章紧跟上期,讲解py爬虫发送smtp邮件. 有两个好玩的地方: 1.将爬取的数据通过SMTP邮件发送通知 2.将爬虫配置挂载在安卓手机上实时运行,省去了部署服务器的麻烦和费用 ...
- Project 1 :Python爬虫源码实现抓取淘宝指定商品所有评论并保存到文件
学习python一个多月,掌握了一些基础,因为开淘宝店的原因,平时会抓取一些淘宝数据,尝试用简单的语言写一些python爬虫,关键信息都注释在源码内.这是我的第一个爬虫程序,基于python3.6-p ...
- python爬虫源码附注解_Python爬虫遇到验证码的几种处理方式,文章末尾有源码
最近事情其实挺多了,打了一下蓝桥杯的比赛, 还在准备着一些证书的考试, 关于爬虫之类的博客都搁着了一段时间了, 关于我自己确实有点退步了, 实属不该, 其实我自己也是在想, 大三了,到底我是要去考研, ...
最新文章
- 万万没想到,1200 年前老祖宗们就知道大数据了
- js 字符和html和数值拼接,js中substring和substr的用法(获取字符串为整个html页面中的某个数值)...
- [javaSE] 多线程(join方法)
- oracle 删除老存档,【转】oracle存档日志删除
- mybatis中concat的用法
- 全代码实现ios-1
- NPDP产品经理认证:精益画布使用六步法
- STM32_ADC模数转换的基本原理
- 【统计学】利用spss正态分布假定检验 S-W检验 K-S检验 直方图 Q-Q图
- windows双开微信多开微信
- 4 描述性统计量和统计图
- linux下chm阅读器kchmviewer中文乱码解决方法
- 小说作者推荐:半截白菜合集
- ubuntu yah3c 自动认证可执行脚本
- css 纵向合并_excel只能合并横向单元格
- 想给他妹妹每人再补贴一千镑的收入
- Qt 之 MediaPlayer 音视频播放
- css实现div中的input和span垂直居中显示
- 域名贵吗?域名值不值钱?
- Android 监听屏幕锁屏,用户解锁
热门文章
- 使用simulink模拟六个位移传感器数据,并实现数据的实时采集与处理
- 【从0到1完成一个项目(一)】用户中心(上)
- python这么火找不到工作_python工作太难找,python找不到工作原因。
- dux修改index.php,DUX全站底部推广区修改
- 监控软件自动发现功能和监控软件分布式监控配置
- JSP政府机关公文文档收发管理系统
- unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新
- IPv6地址配置方式,无状态地址配置及DHCPv6配置
- 指尖轻舞桌面:Slide On Desk - 更新日志
- 十大网址导航站排行榜