记录一篇简单的爬虫经历~豆瓣电影250top_百度搜索https://www.baidu.com/s?word=%E8%B1%86%E7%93%A3%E7%94%B5%E5%BD%B1250top&tn=25017023_10_pg&lm=-1&ssl_s=1&ssl_c=ssl1_1721136aead
爬虫内容参考阿优乐扬的博客-CSDN博客https://blog.csdn.net/ayouleyang/article/details/96023950?

爬取到的内容如下,是xls文件。

以下内容对小白白无敌友好
实现装备:Windows64,pycharm
为了爬虫安装的库有:requests, bs4, BeautifulSoup, xlwt(区分大小写)

代码参考的是上述博主的,使用中遇到了一些问题,下面我来简单说一下。
原博主代码(当然可能是我的电脑不奥利给的原因)

import re
import urllib.request
from bs4 import BeautifulSoup
import xlwturls = "https://movie.douban.com/top250"
html = urllib.request.urlopen(urls).read()
soup = BeautifulSoup(html, "html.parser")
all_page=[]
print(u'网站名称:', soup.title.string.replace("\n", ""))

第一个弹出错误提示:urllib.error.HTTPError: HTTP Error 418
解决方法,headers一行要改成自己计算机在网址中的User-Agent,也就是User-Agent有很种,一定要匹配自己的,查询Headers步骤如下(适合按F12查询无效者):打开任意网址,点开右上角的菜单选项,选择开发者工具,选择network,任意点开网站的连接,在network上会显示一些文件,点开任意文件右边会显示Headers,User-Agent,复制后注意引号与空格。

第二个错误行:html = urllib.request.urlopen(urls).read(),在这一行里面urlopen()很不给力,一直提示错误,修改后代码 html = requests.get(urls,headers = headers )

第三个错误提示:object of type ‘Response’ has no len(),错误行为:soup = BeautifulSoup(html, “html.parser”),错误原因:html是requests对象,无法使用Beautiful解析,需要在html后面接content。解决后代码:soup = BeautifulSoup(html.content , “html.parser”)。

然后下面是卑微的我修改后的代码,然后就可以爬出来啦~

urls = "https://movie.douban.com/top250"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36'}
html = requests.get(urls,headers = headers )
soup = BeautifulSoup(html.content , "html.parser")
all_page = []
print(u'网站名称:', soup.title.string.replace("\n", ""))# 定位代码范围、爬虫部分
def part(url):html = requests.get(urls,headers = headers )soup = BeautifulSoup(html.content , "html.parser")for tag in soup.find_all(attrs={"class": "item"}):try:ta = tag.find('em').string# print(u'豆瓣排名:', ta)name = tag.find('span').string# print(u'中文名称:', name)English = tag.find_all('span')[1].get_text()yuanName = English.split('/')[1]# print(u'原名称:', yuanName)country = tag.p.get_text().split('/')[-2]# print(u'国家:', country)time = tag.p.get_text().split('\n')[2].split('/')[0].replace(" ", "")# print(u'上映时间:', time)Leixing = tag.p.get_text().split('\n')[2].split('/')[-1]# print(u'类型:', Leixing)# 电影评分          for peo in tag.find_all(attrs={"class": "star"}):valuation = peo.find_all('span')[-1].get_text()regex = re.compile(r"\d+\.?\d*")people = regex.findall(valuation)[0]# print(u'评价人数:',people)# 导演及主演join = tag.p.next_element  # p的后节点role = join.replace("\n", "").replace(" ", "")# print(role)introduce = tag.a.get('href')# print(u'剧情简介:', introduce)img = tag.img.get('src')# print(u'图片地址:',img)lab = tag.find_all(attrs={"class": "other"})lable = lab[0].get_text()# print(u'影片标签:', lable)# print()page = [ta, name, yuanName, country, time, Leixing, sore, people, role, introduce, img, lable]all_page.append(page)# print(all_page)except IndexError:pass
if __name__ == '__main__':i = 0while i < 10:print(u'网页当前位置:', (i + 1))num = i * 25url = 'https://movie.douban.com/top250?start=' + str(num) + '&filter='part(url)book = xlwt.Workbook(encoding='utf-8')sheet = book.add_sheet('电影排名表')head = ['豆瓣排名', '电影名', '原名称', '国家', '时间', '类型', '评分', '评价人数', '角色', '介绍', '图片地址', '影片标签']for h in range(len(head)):sheet.write(0, h, head[h])j = 1for list in all_page:k = 0for data in list:# print(data)sheet.write(j, k, data)k = k + 1j += 1book.save('豆瓣电影top250.xls')i = i + 1

超简单的豆瓣电影Top前250影片基本信息爬取相关推荐

  1. python爬取豆瓣电影top250并保存为xlsx_python 爬虫获取豆瓣电影排行榜前250并写入excel...

    豆瓣电影排行榜前250 分为10页,第一页的url为https://movie.douban.com/top250,但实际上应该是https://movie.douban.com/top250?sta ...

  2. 爬取豆瓣电影排名前250部电影并且存入Mongo数据库

    2019独角兽企业重金招聘Python工程师标准>>> 需求:爬取豆瓣电影top250(https://movie.douban.com/top250)的电影数据: 标题(title ...

  3. 爬取豆瓣电影排行榜前250

    环境:python3.6 + BeautifulSoup 爬取一页的电影信息 对应网址:https://movie.douban.com/top250 import requests # 导入网页请求 ...

  4. python爬取豆瓣电影top250_用Python爬虫实现爬取豆瓣电影Top250

    用Python爬虫实现爬取豆瓣电影Top250 #爬取 豆瓣电影Top250 #250个电影 ,分为10个页显示,1页有25个电影 import urllib.request from bs4 imp ...

  5. python爬虫爬取豆瓣电影信息城市_python爬虫,爬取豆瓣电影信息

    hhhhh开心,搞了一整天,查了不少python基础资料,终于完成了第一个最简单的爬虫:爬取了豆瓣top250电影的名字.评分.评分人数以及短评. 代码实现如下:#第一个最简单的爬虫 #爬取了豆瓣to ...

  6. python爬取豆瓣电影top250的代码_Python爬虫——爬取豆瓣电影Top250代码实例

    利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Excel表中 ...

  7. 爬取豆瓣电影评分前250部电影

    # 豆瓣Top250 import requests from bs4 import BeautifulSoupdef get_movie():movie_list = []headers = {'u ...

  8. python爬取豆瓣电影top250的名字_Python爬虫-爬取豆瓣电影Top250

    小菜鸟一枚,这是第五个爬虫吧,记录一下 #!usr/bin/env python3 # -*- coding:utf-8-*- import requests from bs4 import Beau ...

  9. python爬取豆瓣电影top250_Python爬虫实战(一):爬取豆瓣电影top250排名

    先上代码 #coding=utf-8 import re import urllib.request def getHtml(url): page = urllib.request.urlopen(u ...

最新文章

  1. 微信二维码支付快速入门
  2. CVPR 2019 | 腾讯AI Lab解读六大前沿方向及33篇入选论文
  3. 软RAID-mdadm折腾小记
  4. 华三ospf联动bfd_HCIE2020__路由交换专家__BFD综合实验
  5. 只有python可以爬虫吗_无所不能的Python之爬虫那点事儿
  6. 在java中原始时间_Java 日期时间
  7. 360 php offer,审批终于通过了,从面试到拿到奇虎360的offer已经失…
  8. linux bash 历史记录,Linux Bash History 命令历史记录
  9. 再问数据中台 - 数据中台建设的最大的挑战是什么
  10. 快速开发框架介绍-懂你的RUOYI
  11. 那些消失了的黑客杂志 | 深度
  12. 若依框架----代码生成(详解)
  13. 关于debian网卡驱动
  14. 数据挖掘——时间序列算法之组合模型
  15. Unity手势插件FingerGestures
  16. linux sftp 重命名,SFTP对文件重命名 删除 退出 查看
  17. 我的世界服务器核心文件,minecraft1.9服务端核心Paper
  18. 利率市场化冲击传统资产负债管理 金融壹账通助力银行科技转型
  19. python 转换深度摄像头获取的字节流数据为16bitPNG图像
  20. 小姐姐太强了,动图展示 10 大 Git 命令,不会都难

热门文章

  1. 称重管理系统地磅称重系统原来管理地磅这么简单?
  2. 腾讯产品总监曹菲-----为何我工作十年,内心仍无比恐慌
  3. 2020-8-30 《明日方舟》python抽卡代码
  4. 看“三国”谈谁是好领导-超博好领导系列
  5. VS2019 x64环境下应用程序无法正常启动,出现0xc000007b报错
  6. YARN 作业 Staging目录的用途及配置
  7. 电子商务网站购物车设计
  8. Matlab论文插图绘制模板第43期—直方图(histogram)
  9. 蓝桥杯单片机CT107D_03_数码管动态显示
  10. 在JavaScript中每5秒调用一个函数