Python获取最新电影的信息
这次将从电影天堂获取最新的电影的详细信息,这里电影的信息罗列的比较详细。
本来只是想获取电影的迅雷链接,然后用迅雷去下载。但看到这里的电影的信息比较完整和详细,忍不住把所有信息都爬取下来了。
下图是《猩球崛起3》 的简介,可以看到信息还是很多的。

主要代码如下:
import requests
import re
from bs4 import BeautifulSoup
from time import sleep URL = "http://www.dytt8.net"
url_index = "http://www.dytt8.net/html/gndy/dyzz/list_23_" def Get_index(number = 1):
#传入索引页的页码,获取标题和对应的详情页的URL,将其构成字典返回
url = url_index + str(number) + ".html"
#传获取HTML源码
res = requests.get(url)
res.encoding = "gb2312" text = res.text #从索引页的源码中获取信息所在的部分并返回
reg_name = r'《(.+?)》'
reg_name = re.compile(reg_name)
Soup = BeautifulSoup(text,'lxml')
Soup = Soup.select('a["class=ulink"]')
MyDict = dict()
for s in Soup:
try:
name = re.findall(reg_name,s.text)[0]
except:
name = str(number)
print("在%s中获取电影名失败" %s)
url = URL + s['href']
MyDict[name] = url if number == 1:
reg_number = r'共(.+?)页/'
reg_number = re.compile(reg_number)
Max = re.findall(reg_number,text)[0] return Max,MyDict
else:
return MyDict def Get_info(url):
#传入详情页的URL获取电影的详细的信息
res = requests.get(url)
res.encoding = "gb2312"
text = (res.text)
#print(text)
Soup = BeautifulSoup(text,'lxml')
Soup = Soup.select('div["id=Zoom"]')
Soup = Soup[0].select("td")[0]
return Soup def Get_info_2(text):
reg_1 = r'(.+?)<br/>'
reg_1 = re.compile(reg_1) reg_2 = r'(ftp:.+?)">'
reg_2 = re.compile(reg_2) Xunlei = re.findall(reg_2,text)
Xunlei = Xunlei[0] info = re.findall(reg_1,text) MyList = list()
for i in info: i = i.replace('<br/>','')
i = i.replace('◎','')
i = i.replace('</table> ','')
MyList.append(i)
return Xunlei,MyList def DownLoad(Dict):
for d in MyDict:
url_2 = MyDict[d]
try:
text= str(Get_info(url_2))
[Xunlei,MyList] = Get_info_2(text)
#print(Xunlei)
f = open("电影.txt",'a')
f.write(Xunlei+'\n') for i in MyList:
if '<' in i:
pass
else:
f.write(i+'\n') f.write("\n\n")
f.close()
except:
print("电影%s的详情下载失败!" %d)
#print("%s 的详情下载完成!" %d) if __name__ == "__main__": [Max,MyDict] = Get_index() DownLoad(MyDict) sleep(2) for j in range(2,int(Max)+1):
MyDict = Get_index(j)
DownLoad(MyDict)
print("第%d页下载完成!" %j)
sleep(2)
获取的结果的如下:

Python获取最新电影的信息的更多相关文章
- python获取系统内存占用信息的实例方法
psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控, ...
- 我了解到的新知识之----如何使用Python获取最新外汇汇率信息
这个需求本来是来源于公司同事工作中需求,用户需要使用数据分析工具Power BI抓取多页的中国银行官网上当天的外汇数据.但是没能研究出来. 我就开始在网络上找关于使用python来抓取当天汇率的案例分 ...
- 爬虫实战【4】Python获取猫眼电影最受期待榜的50部电影
前面几天介绍的都是博客园的内容,今天我们切换一下,了解一下大家都感兴趣的信息,比如最近有啥电影是万众期待的? 猫眼电影是了解这些信息的好地方,在猫眼电影中有5个榜单,其中最受期待榜就是我们今天要爬取的 ...
- python 获取淘宝商品信息
python cookie 获取淘宝商品信息 # //get_goods_from_taobao import requests import re import xlsxwriter cok='' ...
- python获取港股通每日成交信息
接口:ggt_daily 描述:获取港股通每日成交信息,数据从2014年开始 限量:单次最大1000,总量数据不限制 积分:用户积2000积分可调取,5000积分无限制,请自行提高积分,具体请参阅本文 ...
- 使用 python 获取 Linux 的 IP 信息(通过 ifconfig 命令)
我们可以使用 python 代码通过调用 ifconfig 命令来获取 Linux 主机的 IP 相关信息,包括:网卡名称.MAC地址.IP地址等. 第一种实现方式: #!/usr/bin/pytho ...
- 使用python获取CPU和内存信息的思路与实现(linux系统)
linux里一切皆为文件,在linux/unix的根文件夹下,有个/proc文件夹,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/proc&qu ...
- python爬取电影网站信息
一.爬取前提1)本地安装了mysql数据库 5.6版本2)安装了Python 2.7 二.爬取内容 电影名称.电影简介.电影图片.电影下载链接 三.爬取逻辑1)进入电影网列表页, 针对列表的html内 ...
- [Python]获取子线程异常信息
起因 今天在写东西的时候,用到了多线程.遇到了个问题: 子线程的异常,在父线程中无法捕获. 解决 问题代码 问题代码示例代码如下: import threading class SampleThrea ...
随机推荐
- 关于跨域cookie,在代码无问题下,浏览器set-cookie显示有内容,但浏览器没写入cookie(刷新没有cookie)
在排除了代码的问题后,如 Domain 不一致,过期时间是基于当前时间增加过期时效的. 在排查返回请求时发现是过期时间的问题,设置的过期时间(Expire)小于请求的时间(Date)时,浏览器就会写不 ...
- iframe中子父页面跨域通讯
目录 #跨域发送信息 #跨域接收信息 #示例Demo 在非跨域的情况下,iframe中的子父页面可以很方便的通讯,但是在跨域的情况下,只能通过window.postMessage()方法来向其他页面发 ...
- 安装MySQL被提示缺少msvcr120.dll,msvcp120.dll或提示0xc00007b错误
踩坑经历: 我的电脑昨天重装了win10系统,在安装MySQL时被提示缺少msvcr120.dll,我去下载msvcr120.dll后放入System32中,又被提示缺少msvcp120.dll,然后 ...
- awk数组学习1
看到有网上一篇博客写的 https://blog.csdn.net/hu721659947/article/details/80352003 输出数组中大于5的数,需要注意if [ $a –ge$b ...
- gulp常用插件之gulp-size使用
更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-size这是一款显示项目的大小插件. 更多使用文档请点击访问gulp-size工具官网. 安装 一键安装不多解释 npm install ...
- Linux网络课程学习第四天
课程内容包括:管道符.重定向与环境变量. 学习心得:个人感觉本章节还是不太好理解,尤其是对自己的基础还不是特别的扎实课余时间还是要反复的复习.
- 前端页面中:jsp和HTML的区别之处
JSP和HTML的区别 HTML页面是静态页面,也就是事先由用户写好放在服务器上,固定内容,不会变,由web服务器向客户端发送,平时上网看的网页都是大部分都是基于html语言的. JSP页面是有JSP ...
- virtual box虚拟机跨物理机迁移
VirtualBox保存虚机数据的是vdi文件,但是直接拷贝在新的VirtualBox中不能打开,因为每个vdi文件都包含了一个uuid的数据,如果直接拷贝,uuid在新的VirtualBox中是不能 ...
- 广搜 BFS()
极其简陋的BFS模板 void BFS(???){ queue<node>q; node start, next; start = ???; q.push(start); while(!q ...
- 在vue项目中显示实时时间(年月日时分秒)
1.在data中定义一个变量,存储时间 data(){ return { nowTime:'' } }, 2.给定一个div <div>{{nowTime}}</div> 3. ...