iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >转载—Python抓取豆瓣电影
  • 876
分享到

转载—Python抓取豆瓣电影

豆瓣电影Python 2023-01-31 02:01:41 876人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

#!/usr/bin/python # -*-coding:utf-8-*- # Python:   2.7 # Program:  爬取豆瓣电影   from bs4 import BeautifulSoup import urllib2

#!/usr/bin/python
# -*-coding:utf-8-*-
# Python:   2.7
# Program:  爬取豆瓣电影
 
from bs4 import BeautifulSoup
import urllib2, JSON, random, sys
 
reload(sys)
sys.setdefaultencoding('utf-8')
 
def get_data(url):
    my_headers = [
        'Mozilla/5.0 (windows NT 5.2) AppleWEBKit/534.30 (Khtml, like Gecko) Chrome/12.0.742.122 Safari/534.30',
        'Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0',
        'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .net CLR 1.1.4322; .NET CLR 2.0.50727; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)',
        'Opera/9.80 (Windows NT 5.1; U; zh-cn) Presto/2.9.168 Version/11.50',
        'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
        'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)']
    header = {"User-Agent": random.choice(my_headers)}
    req = urllib2.Request(url, headers=header)
    html = urllib2.urlopen(req).read()
    data = json.loads(html)['data']
    return data
 
def get_movieInfo(url):
    my_headers = [
        'Mozilla/5.0 (Windows NT 5.2) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.122 Safari/534.30',
        'Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0',
        'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)',
        'Opera/9.80 (Windows NT 5.1; U; zh-cn) Presto/2.9.168 Version/11.50',
        'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
        'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)']
    header = {"User-Agent": random.choice(my_headers)}
    req = urllib2.Request(url, headers=header)
    html = urllib2.urlopen(req).read()
    soup = BeautifulSoup(html, 'html.parser')
    movie = {}
    movie['Name'] = soup.find('span',property="v:itemreviewed").text
    movie['Year'] = soup.find('span',class_='year').text
    movie['Rate'] = soup.find('strong', property="v:average").text
    movie['Runtime'] = soup.find('span', property="v:runtime").text
    movie['Summary'] = soup.find('span', property='v:summary').text
    movie['URL'] = url
 
    movie['Directors'] = ''
    directors = soup.find_all('a', rel="v:directedBy")
    for director in directors:
        movie['Directors'] += director.text
        movie['Directors'] += '  '
 
    movie['Stars'] = ''
    stars = soup.find_all('a', rel="v:starring")
    for star in stars:
        movie['Stars'] += star.text
        movie['Stars'] += '  '
 
    movie['CateGory'] = ''
    categorys = soup.find_all('span', property="v:genre")
    for category in categorys:
        movie['Category'] += category.text
        movie['Category'] += '  '
 
    return movie
 
def get_urls():
    base_url = 'https://movie.douban.com/j/new_search_subjects?sort=R&range=1,10&tags=%E7%94%B5%E5%BD%B1&start='
    urls=[]
    nu = 0
    while True:
        print nu
        url = base_url + str(nu)
        data = get_data(url)
        if len(data) == 0:
            break
        for i in data:
            urls.append(i['url'])
        nu += 20
    return urls
 
if __name__ == '__main__':
    urls = get_urls()
    f = open('movieinfo.txt','w+')
    for url in urls:
        try:
            movie = get_movieInfo(url)
            movie_str = json.dumps(movie,ensure_ascii=False, encoding='UTF-8')
            f.write(movie_str)
            f.write('\n')
            f.flush()
        except:
            print url
            continue
    f.close()


摘自: Https://blog.51cto.com/wucl202000/1961206,感谢原作者,供学习参考


--结束END--

本文标题: 转载—Python抓取豆瓣电影

本文链接: https://www.lsjlt.com/news/186116.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 转载—Python抓取豆瓣电影
    #!/usr/bin/python # -*-coding:utf-8-*- # Python:   2.7 # Program:  爬取豆瓣电影   from bs4 import BeautifulSoup import urllib2...
    99+
    2023-01-31
    豆瓣 电影 Python
  • (转)Python3爬取豆瓣电影保存到
    48行代码实现Python3爬取豆瓣电影排行榜代码基于python3,用到的类库有: 标题文字 requests:通过伪造请求头或设置代理等方式获取页面内容,参考文档BeautifulSoup:对页面进行解析,提取数据,参考文档PyMyS...
    99+
    2023-01-31
    豆瓣 电影
  • 爬取豆瓣电影信息
    昨天写了一个小爬虫,爬取了豆瓣上2017年中国大陆的电影信息,网址为豆瓣选影视,爬取了电影的名称、导演、编剧、主演、类型、上映时间、片长、评分和链接,并保存到MongoDB中。 一开始用的本机的IP地址,没用代理IP,请求了十几个网页之后...
    99+
    2023-01-30
    豆瓣 电影 信息
  • python爬取豆瓣top250的电影数
    爬取网址: https://movie.douban.com/top250 一:爬取思路(新手可以看一下) :      1:定义两个函数,一个get_page函数爬取数据,一个save函数保存数据,mian中向get_page函数传递...
    99+
    2023-01-31
    豆瓣 电影 python
  • 爬取豆瓣电影排行top250
    爬取豆瓣电影排行top250 功能分析: 使用的库 1、time 2、json 3、requests 4、BuautifulSoup 5、RequestException """ 作者:李舵 日期:2019-4-27...
    99+
    2023-01-31
    豆瓣 电影排行
  • 用python爬取豆瓣前一百电影
    目录实现代码:代码分析:运行结果:总结网站爬取的流程图: 实现项目我们需要运用以下几个知识点 一、获取网页1.找网页规律;2.使用 for 循环语句获得网站前4页的网页链接;3.使...
    99+
    2024-04-02
  • Python爬取豆瓣电影方法是什么
    本篇内容主要讲解“Python爬取豆瓣电影方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬取豆瓣电影方法是什么”吧!主要目标 环境:MAC + Python3....
    99+
    2023-06-02
  • 使用Python怎么爬取豆瓣电影名
    这期内容当中小编将会给大家带来有关使用Python怎么爬取豆瓣电影名,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyt...
    99+
    2023-06-14
  • python如何爬取豆瓣电影TOP250数据
    这篇文章将为大家详细讲解有关python如何爬取豆瓣电影TOP250数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在执行程序前,先在MySQL中创建一个数据库"pachong"。i...
    99+
    2023-06-15
  • 怎么用python爬取豆瓣前一百电影
    这期内容当中小编将会给大家带来有关怎么用python爬取豆瓣前一百电影,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的...
    99+
    2023-06-26
  • Python爬虫爬取豆瓣电影之数据提取值
    工具:Python 3.6.5、PyCharm开发工具、Windows 10 操作系统、谷歌浏览器 目的:爬取豆瓣电影排行榜中电影的title、链接地址、图片、评价人数、评分等 网址:https://movie.douban.com/ch...
    99+
    2023-01-30
    爬虫 豆瓣 数据
  • Python爬虫怎么爬取豆瓣影评
    本篇内容主要讲解“Python爬虫怎么爬取豆瓣影评”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬虫怎么爬取豆瓣影评”吧!一、学习开始前需安装模块pip install reques...
    99+
    2023-06-02
  • 13行代码实现爬取豆瓣250电影榜单
    原理很简单,通过发送resquest请求获取服务器的response,再使用xpath提取其中我们需要的数据,然后保存到文件中。 先看看我爬取的结果: 首先,需要用到的模块有两个: •requests •lxml 第一步,我们先用Ch...
    99+
    2023-01-30
    豆瓣 榜单 代码
  • Python 通过xpath属性爬取豆瓣热映的电影信息
    目录前言页面分析实现过程创建项目Item定义中间件操作定义爬虫定义数据管道定义配置设置执行验证总结前言 声明一下:本文主要是研究使用,没有别的用途。 GitHub仓库地址:githu...
    99+
    2024-04-02
  • python 爬取豆瓣电影短评并利用wordcloud生成词云图
    目录前言第一步、准备数据  第二步、编写爬虫代码第三步、生成词云图前言 最近学到数据可视化到了词云图,正好学到爬虫,各种爬网站【实验名称】 爬取豆瓣电影《千与千寻》的评论并...
    99+
    2024-04-02
  • 详解如何用Python登录豆瓣并爬取影评
    目录一、需求背景二、功能描述三、技术方案四、登录豆瓣1.分析豆瓣登录接口2.代码实现登录豆瓣3.保存会话状态4.这个Session对象是我们常说的session吗?五、爬取影评1.分...
    99+
    2024-04-02
  • 如何使用Selenium爬取豆瓣电影前100的爱情片
    小编给大家分享一下如何使用Selenium爬取豆瓣电影前100的爱情片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是SeleniumSelenium是一个用...
    99+
    2023-06-14
  • Python如何通过xpath属性爬取豆瓣热映的电影信息
    本篇文章给大家分享的是有关Python如何通过xpath属性爬取豆瓣热映的电影信息,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前言声明一下:本文主要是研究使用,没有别的用途。...
    99+
    2023-06-25
  • python怎么爬取豆瓣网页
    这篇文章主要介绍了python怎么爬取豆瓣网页,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python 语法简要介绍python 的基础语法大体与c语言相差不大,由于省去了...
    99+
    2023-06-14
  • 【python】爬取豆瓣电影排行榜Top250存储到Excel文件中【附源码】
    英杰社区https://bbs.csdn.net/topics/617804998 一、背景         近年来,Python在数据爬取和处理方面的应用越来越广泛。本文将介绍一个基于Python的爬虫程 序,用于抓取豆瓣电影Top...
    99+
    2024-01-21
    python 人工智能 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作