这次将从电影天堂获取最新的电影的详细信息,这里电影的信息罗列的比较详细。

本来只是想获取电影的迅雷链接,然后用迅雷去下载。但看到这里的电影的信息比较完整和详细,忍不住把所有信息都爬取下来了。

下图是《猩球崛起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获取最新电影的信息的更多相关文章

  1. python获取系统内存占用信息的实例方法

    psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控, ...

  2. 我了解到的新知识之----如何使用Python获取最新外汇汇率信息

    这个需求本来是来源于公司同事工作中需求,用户需要使用数据分析工具Power BI抓取多页的中国银行官网上当天的外汇数据.但是没能研究出来. 我就开始在网络上找关于使用python来抓取当天汇率的案例分 ...

  3. 爬虫实战【4】Python获取猫眼电影最受期待榜的50部电影

    前面几天介绍的都是博客园的内容,今天我们切换一下,了解一下大家都感兴趣的信息,比如最近有啥电影是万众期待的? 猫眼电影是了解这些信息的好地方,在猫眼电影中有5个榜单,其中最受期待榜就是我们今天要爬取的 ...

  4. python 获取淘宝商品信息

    python cookie 获取淘宝商品信息 # //get_goods_from_taobao import requests import re import xlsxwriter cok='' ...

  5. python获取港股通每日成交信息

    接口:ggt_daily 描述:获取港股通每日成交信息,数据从2014年开始 限量:单次最大1000,总量数据不限制 积分:用户积2000积分可调取,5000积分无限制,请自行提高积分,具体请参阅本文 ...

  6. 使用 python 获取 Linux 的 IP 信息(通过 ifconfig 命令)

    我们可以使用 python 代码通过调用 ifconfig 命令来获取 Linux 主机的 IP 相关信息,包括:网卡名称.MAC地址.IP地址等. 第一种实现方式: #!/usr/bin/pytho ...

  7. 使用python获取CPU和内存信息的思路与实现(linux系统)

    linux里一切皆为文件,在linux/unix的根文件夹下,有个/proc文件夹,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/proc&qu ...

  8. python爬取电影网站信息

    一.爬取前提1)本地安装了mysql数据库 5.6版本2)安装了Python 2.7 二.爬取内容 电影名称.电影简介.电影图片.电影下载链接 三.爬取逻辑1)进入电影网列表页, 针对列表的html内 ...

  9. [Python]获取子线程异常信息

    起因 今天在写东西的时候,用到了多线程.遇到了个问题: 子线程的异常,在父线程中无法捕获. 解决 问题代码 问题代码示例代码如下: import threading class SampleThrea ...

随机推荐

  1. 免费生成二维码接口,可直接嵌入到web项目中,附带嵌入方法,任意颜色二维码,任意大小二维码!

    在线体验连接:http://www.zhaimaojun.top/qrcode/ 你是否在项目中寻找方便而且免费的可以直接嵌入到项目中的二维码生成工具呢?你找到了这里,说明你已经找到了!不要犹豫直接拿 ...

  2. Local changes were not restore

    问题是这样的: 更新代码的时候出现这个弹框,不能更新最新代码 解决如下: 直接点击Clear [注意:这个操作是放弃本地所有的修改,如果要找回代码千万不要点击] 再点击Apply Stash  就可以 ...

  3. 必看!macOS进阶不得不知的实用小技巧

    不知道大家对使用苹果电脑的体验如何?您充分利用您的mac了吗?其实macOS上存在着许多快捷方式和技巧可以帮助简化我们的工作流程,提高效率,但是在日常生活中经常被人们忽略或者遗忘.以下是macdown ...

  4. z3学习档案

    Reference: 看雪-z3巧解逆向 知乎:Z3一把梭 z3 solver学习 使用z3约束求解器解决CTF中的题目 Playing with Z3,hacking the serial chec ...

  5. Docker最全教程——从理论到实战(十五)

    前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...

  6. ZOJ 4082 Little Sub and his Geometry Problem题解

    题意 f(u,v):x小于等于u且y小于等于v的点才对f有贡献,每个这样的点贡献(u-x)+() 思路 =f(u_2,v_2)" class="mathcode" src ...

  7. reids中删除某个前缀的所有key

    需求:reids中删除某个前缀的所有key 说明:代码中的0:2标识从key前缀中截取前2个字符,这里示例的时候比如“b_”前缀,使用时候根据实际情况截取对应的长度进行判断即可. 生成测试数据 #!/ ...

  8. MySQL8.0.11解压版安装详细教程

    1. 从官网下载zip包 官网网址(https://dev.mysql.com/downloads/mysql/) 2. 解压 将压缩包解压到一个目录(后续将此目录作为安装目录),我这里是解压到了D: ...

  9. mac 命令行下 vim 的使用

    vi/vim 使用实例 使用 vi 来建立名为 test.txt 的文件 vi test.txt1按下 ESC 按钮回到一般模式 在一般模式中按下 :wq 储存后离开 vi 基本上 vi/vim 共分 ...

  10. flask入门(四)

    数据库 flask在数据库这一块有一个扩展应用叫做flask-sqlalchemy,去虚拟环境里pip install一下,如下 我这边用的是mysql,指定的url是这个mysql://userna ...