如何抓取豆瓣网电影海报信息及重命名

打开豆瓣电影url:https://movie.douban.com/
找到真正存储信息的url:https://movie.douban.com/j/search_subjects?type=movie&tag=热门&page_limit=50&page_start=0
在上篇文章中已经说了怎么去找动态网站的真实存储数据的url就不多说了
在这里插入图片描述
打开网址
在这里插入图片描述
我们这次就需要这些信息
#!/usr/bin/env python

-- coding: utf-8 --

@Time : 2019/6/10 22:35

@Site :

@File : doubantest.py

@Software: PyCharm

import re
import requests
from requests import RequestException
from demo01.util import buid_proxy
from urllib.parse import urlencode
import json
import os
proxies=buid_proxy()
headers={
“User-Agent”:“Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36”,
“Referer”:“https://movie.douban.com/
}

def get_one_page():
#构造真实url
paramete = {
‘type’: ‘movie’,
‘tag’: ‘热门’,
‘page_limit’: ‘50’,
‘page_start’: 0
}
url='https://movie.douban.com/j/search_subjects?’+urlencode(paramete)
#print(url)#最好打印一下,自己构造是否正确
try:
res=requests.get(url,headers=headers,proxies=proxies)
if res.status_code==200:
html=res.text
html=json.loads(html)#

        return html
    return None
except RequestException:
    return None

def parse_one_page(data):
if data and ‘subjects’ in data.keys():#真实的url是一个大字典,subjects是这个字典key值,我们需要的数据都是这个value
# print(data)
if data !=None:#因为我迭代的时候出现空值,空值不能被迭代,会一直报错
for item in data.get(‘subjects’):
#print(item)
movie_id=item.get(‘id’)
title=item.get(‘title’)
movie_url=item.get(‘url’)
img_url=item.get(‘cover’)
move_info={#
“movie_id”:movie_id,
“movie_name”:title,
“movie_url”:movie_url,
“img_url”:img_url
}

        # print(move_info)
        return move_info

def save_to_file(content):

def save_img_to_file(data):
path=‘E:/test001/photo/douban/’
if data and ‘subjects’ in data.keys():
# print(data)
if data != None:
for item in data.get(‘subjects’):
# print(item)
title = item.get(‘title’)
img_url = item.get(‘cover’)
print(title,img_url)
img_path=path+title+’.jpg’#构造img存储地址
response=requests.get(url=img_url,proxies=proxies)
#这里表明一下,这个地方一定要这样写不然后会一直报各种错误,例如乱码,json格式错误,或者需要自己类型啊
content=response.text
content=content.encode(encoding=‘utf-8’)
with open(img_path,‘wb’) as f:
f.write(content)

                f.close()

def main():
data=get_one_page()
# print(data)
parse_one_page(data)
cont=save_img_to_file(data)
print(cont)

if name==‘main’:
main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1:本电影系统使用的是包月计费方式,会员可以分为电影游客、普通会员、白银会员和黄金会员, 黄金会员可无任何限制下载电影,普通会员一天只能下载4集电影,白银会员一天只能下载8集电影, 会员只要一次付12个月就可以自动成为黄金会员,(增加一个月高额黄金会员、两年黄金会员) (增加永久钻石会员)。电影可以分为(新增免费电影)普通电影和黄金电影, 黄金电影只有黄金会员才可以下载。 2:本电影系统有批量生成充值卡功能,用户得到卡号和密码就可以往自己的帐号充值, 可以生成各种不同的卡,充值卡可以拿到各个吧代售 3:本电影系统有多种支付方式:邮局汇款、银行汇款、在线支付、手机支付。 4:会员到期系统自动封号 5:电影系统可以实现在线播放与下载功能。 6:在线播放采用双重加密方法,保证影片地址不被泄漏。 7:可以设定多个服务器地址,影片地址可随时批量修改。 8:有强大的会员续费功能,管理方便,只需要按按钮就可以实现会员开通、续费、删除。 9:有在线发邮件功能,可随时通知道会员 10:本电影系统可实现电影站服务器与影片存放服务器分离 11:可以一次增加无数集电影。 12:内置图片上传功能 13:支持多服务器 14:可以查看用户是否在线,可以将用户踢出站。 15:可以支持在线支付,(可以自动开通会员帐号)内置1st-pay在线支付功能,用户只需在后台设置好1st-pay的用户名及返回URL即可使用,无需修改程序。支付成功返回的URL是user/puyok.asp 后台地址:http://你的域名/admin/login.asp 管理账号:admin/admin。 16:增加会员报告影片错误功能。 17:程序会自动跟据会员付多少钱而给会员定相应的级别和相应的观看时间,会员到期程序自动封锁帐号。 18:数据库采用特殊制作,不通过FTP从服务器下载的数据库是无法使用的。 19:电影可以设置为免费电影、普通电影、黄金电影。 20:增加演员搜索 21:增加IP限制,被限制的ip将无法访问 22:增加了站投票功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值