python爬取电影天堂(requests模块)
使用requests,lxml对电影天堂网站数据的爬取
在这里插入代码片
# _*_ coding:utf _*_
# 邮箱:3195841740@qq.com
# 人员:21292
# 日期:2020/3/7 17:38
# 工具:PyCharm
from lxml import etree
import requests
import re
import jsonmovie = {}
# url = 'https://www.dytt8.net/html/gndy/jddy/20160320/50523.html'
headers = {'User-Agent' :'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0'
}
def get_detail_urls(url):response = requests.get(url ,headers = headers)text = response.content.decode('gbk')html = etree.HTML(text)detail_urls = html.xpath('//font[@color = "#ff0000"]/p//@href')for detail_url in detail_urls[:-4]:print(detail_url)spider(detail_url)def spider (url):response = requests.get(url,headers = headers)text = response.content.decode('gbk')html = etree.HTML(text)name = html.xpath('//div[@class = "co_area2"]/div[1]/h1/font/text()')name_detsil = re.findall(r'[《](.*?)[》]',name[0])[0]movie['电影名称'] = str(name_detsil)infos = html.xpath('//div[@id = "Zoom"]//text()')for index,info in enumerate(infos):if info.startswith('◎年 代'):info = info.replace('◎年 代','').strip()movie['年代'] = infoelif info.startswith('◎产 地'):info = info.replace('◎产 地','').strip()movie['产地'] = infoelif info.startswith('◎语 言'):info = info.replace('◎语 言','').strip()movie['语言'] = infoelif info.startswith('◎类 别'):info = info.replace('◎类 别','').strip()movie['类别'] = infoelif info.startswith('◎豆瓣评分'):info = info.replace('◎豆瓣评分','').strip()movie['豆瓣评分'] = infoelif info.startswith('◎片 长'):info = info.replace('◎片 长','').strip()movie['片长'] = infoelif info.startswith('◎片 长'):info = info.replace('◎片 长','').strip()movie['片长'] = infoelif info.startswith('◎导 演'):info = info.replace('◎导 演','').strip()movie['导演'] = infoelif info.startswith('◎主 演'):info = info.replace('◎主 演','').strip()actors = []actors.append(info)for x in range(index+1,len(infos)):actor = infos[x].strip()if actor.startswith('◎'):breakactors.append(actor)movie['主演'] = actorselif info.startswith('◎简 介 '):profile = infos[index+1].strip()movie['简介'] = profileprint("*"*30)for each in movie:if each == '主演':for x in range(0,len(movie[each])):if x == 0:print(each,':',movie[each][x])else:print('\t',movie[each][x])else:print(each,':',movie[each])print("*" * 30)with open('电影文件.json', 'a', encoding='utf-8') as fp:fp.write(json.dumps(dict(movie), indent=2, ensure_ascii=False) + ',\n')
def start():url = 'https://www.dytt8.net/html/gndy/jddy/20160320/50523.html'get_detail_urls(url)
if __name__ == '__main__':start()
在爬取的过程中,发现网页请求很困难,因此,数据有时请求不出来。
使用相同方法抓取 豆瓣电影
这个比抓取电影天堂快很多。
python爬取电影天堂(requests模块)相关推荐
- Python 爬取电影天堂top最新电影
Python爬虫有他无可比拟的优势:语法简单,经常几十行代码就能轻松解决问题,相比于JAVA,C,PHP;第三方库丰富,Python强大而又丰富的第三方库使他几乎可以无所不能.今天我们就来用用Pyth ...
- python爬取电影天堂的下载链接
python爬取电影天堂dytt8的下载链接 电影天堂下载链接都是magnet的,搞下来想下就下没有广告 建一个main.py 一个一个挨着去爬肯定慢啊,建一个多线程的去爬 mui.py 多线程有可能 ...
- python爬取电影天堂新片精品模块电影列表,并用迅雷下载
python版本是3.6.5,上代码: # 爬取电影天堂 from selenium import webdriver import requests from bs4 import Beautifu ...
- python 爬取电影天堂电影
主要介绍爬取电影天堂首页的电影列表,并将结果保存为csv文件. 1.首先导入需要的模块 import requests from bs4 import BeautifulSoup import csv ...
- python爬取电影天堂首页
用python写了个小爬虫,用来爬取电影天堂首页放置的几十部电影的名称,上映日期和下载链接,用到了beautifulsoup库和lxml库用来解析 代码如下: import requests impo ...
- python爬取电影天堂电影信息
from lxml import etree import requests # url='https://www.dytt8.net/html/gndy/dyzz/index.html' heade ...
- python爬取电影天堂beautiful_Python爬虫 -- 抓取电影天堂8分以上电影
看了几天的python语法,还是应该写个东西练练手.刚好假期里面看电影,找不到很好的影片,于是有个想法,何不搞个爬虫把电影天堂里面8分以上的电影爬出来.做完花了两三个小时,撸了这么一个程序.反正蛮简单 ...
- python爬取电影天堂
爬取的网址: http://www.ygdy8.net/html/gndy/dyzz/list_23_1.html 使用的环境: pychram+anaconda5.4.7+python3.7.1 使 ...
- 360影视大全 python_「www.dy2018.com」python爬取电影天堂(www.dy2018.com)所有视屏的所有链接 - 金橙教程网...
www.dy2018.com 用到的库为Requests,bs4,re,pyMySQL 目的是将链接存入数据库,数据库分为三张表: category:存储分类 video:存储视屏的信息 link:存 ...
最新文章
- 解决eclipse修改后台代码ctrl+s总是【自动重启服务器】问题
- SpringBoot拦截器不生效
- Matplotlib的画图的补充(Matplotlib的疑难杂症)
- 计算机要学打字吗,有了电脑打字,还需要练字吗?
- [P2387魔法森林
- python打包的exe如何免杀_如何使用Python进行Payload免杀
- 2 s锁是什么_《演员请就位》:一场戏拿了2张S卡,任敏凭什么打败老戏骨?
- 大专学的pHp找什么工作,大专毕业能做什么工作 毕业都去干嘛了
- python脚本在centos系统一键卸载重新安装Mysql
- animate支持的css属性
- 【笔记】openwrt - Dnsmasq替换SmartDns+ADguardHome、koolproxy
- Android studio上音频文件格式问题
- matlab aic怎么用,AIC信息准则的编程
- centos7桌面没有计算机图标,Centos7,桌面图标消失且右键失效
- JNI便捷开发框架JNA框架之指针参数Pointer(二)
- 产品经理如何进行复盘总结
- polarion alm 2021
- 网页分享如何展示标题,描述,缩略图
- CentOS 6.X无法读取NTFS分区的移动硬盘
- QSV格式转换器如何将爱奇艺视频转换成MP4格式
热门文章
- Java解析银联报文_中国银联8583报文(JAVA)封包/解包/位图 相关操作源代码
- 新西兰转基因奶牛,奶水质量高
- Python表白比心
- usb转串口蓝屏问题的解决
- C++逗号运算符的作用
- ps做gif love教程(转)
- 读书笔记:20220729 TRC2013 Max pressure control of a network of signalized intersections
- js原生ajax实例详解
- html form标签的action属性是什么意思?又有哪些用法?(附实例)
- cetus权限连接主从mysql_cetus/cetus-quick-try.md at master · session-replay-tools/cetus · GitHub...