唐松编《python网络爬虫从入门到实践》第47页3.4.3自我实践题

全部代码为原创代码

完整代码如下:

import requests
import reheaders = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36'}
info_lists = []def get_info(url):res = requests.get(url,headers=headers)filmnames = re.findall('<a href=".*?">.*?<span class="title">(.*?)</span>', res.text, re.S)Englishnames = re.findall('<span class="title">.nbsp;/.nbsp;(.*?)</span>',res.text,re.S)Hongkongnames= re.findall('<span class="other">.nbsp;/.nbsp;(.*?)</span>',res.text,re.S)levels = re.findall('导演:(.*?).nbsp;.nbsp;.nbsp;主演:.*?',res.text,re.S)comments= re.findall('<span class="inq">(.*?)</span>',res.text,re.S)scores = re.findall('<span class="rating_num" property="v:average">(.*?)</span>',res.text,re.S)for filmname,Englishname,Hongkongname,level,comment,score in zip(filmnames,Englishnames, Hongkongnames,levels,comments,scores):info = {'filmname':filmname,'Englishname':Englishname,'Hongkongname':Hongkongname,'level':level,'comment':comment,'score':score}info_lists.append(info)
if __name__ == '__main__':urls = ['https://movie.douban.com/top250?start=' + str(i) +'&filter='.format(str(i)) for i in range(0,250,25)]for url in urls:get_info(url)for info_list in info_lists:f = open(r'D:\douban.txt','a+')try:f.write(info_list['filmname']+'\n')f.write(info_list['Englishname']+'\n')f.write(info_list['Hongkongname']+'\n')f.write(info_list['level'] + '\n')f.write(info_list['comment'] + '\n')f.write(info_list['score'] + '\n\n')f.close()except UnicodeEncodeError:passprint(info_list)

打开txt:

利用正则表达式获取豆瓣TOP250电影的英文名、港台名、导演、主演、上映年份、电影分类以及评分相关推荐

  1. python 网络爬虫 1.2 获取豆瓣TOP250电影的中英文名、港台名、导演、上映年份、电影分类以及评分,将数据存入文档。

    题目: 获取豆瓣TOP250电影的中英文名.港台名.导演.上映年份.电影分类以及评分,将数据存入文档. 代码: import codecs import csv import refrom reque ...

  2. C# 利用正则表达式获取文本中的https网址并替换新的对应的值,微信小程序播放腾讯视频

    后台用KindEditor传了好几个视频地址,需要在微信小程序播放,复文本框写的内容是保存在数据库的一个字段的,就像下面这样,像这小程序播放,需要解析除真正的视频地址,所有需要获取里面的两个视频地址, ...

  3. java中利用正则表达式获取a标签

    // 设置新闻内容notice.setContent(editorValue);Matcher m = Pattern.compile("<a[^>]*>([^<]* ...

  4. python爬虫之通过xpath获取豆瓣最新上映电影的海报

    0.目录 1.分析页面 2.初步代码 3.问题排解 4.下载代码 5.总结 1.分析页面 关于xpath网上有许多的教程了,关于xpath的介绍和语法都不在这里赘述,本篇主要讲解如何用xpath爬取豆 ...

  5. 爬取豆瓣Top250电影

    爬取豆瓣Top250电影数据一直是爬虫小白的入门练手项目,下面就来分享一下自己的爬取过程. 开始之前,先简单写一下需求和实现思路. 需求: 爬取豆瓣电影Top250的数据,数据包含排名.电影名称.导演 ...

  6. Python获取TOP250电影的英文名、港台名、导演、主演、上映年份、电影分类及评分

    <Python网络爬虫:从入门到实践>3.4.3自我实践题: 获取豆瓣网上TOP250电影的英文名.港台名.导演.主演.上映年份.电影分类及评分. 学习嘛,就费了点劲自己试了一下,挺耽误时 ...

  7. 简单的PHP爬虫,获取豆瓣正在热映电影列表

    (这是网安实验室IMiss小组第一轮笔试题的第三题) 题目要求: 请编写简单的爬虫程序,爬取豆瓣电影(https://movie.douban.com/)下"正 在热映"的电影名单 ...

  8. 爬虫——豆瓣Top250

    使用requset库和bs4解析,最后保存为csv文件 import requests from bs4 import BeautifulSoup import pandas as pd import ...

  9. java正则表达式获取指定两个字符串之间内容

    xml解析利用正则表达式获取指定两个字符串之间内容 在遇到解析复杂xml的时候,想到大家所想到的都是利用dom4j作为首发工具,但是当遇到层次很多,较为复杂,我们难道还需要从根节点一层一层的解析下去吗 ...

最新文章

  1. WPF TreeView HierarchicalDataTemplate
  2. 关于Map迭代循环,key和value的顺序问题
  3. vim将修改内容复制多次
  4. python 深度 视差 计算_OpenCV-Python教程:49.立体图像的深度图
  5. Android 文件的存储和加载
  6. 深度学习优化算法入门:二、动量、RMSProp、Adam
  7. 麒麟OS新版本,老国产平台机器都装不了,情何以堪?
  8. Sqlserver添加或修改字段
  9. 浅谈腾讯云IM接入方式(java后端)
  10. python出现unexpected indent_Python、unexpected indent错误解决方法
  11. 中企海外周报 | 哈弗F7x性能版在俄罗斯上市;徐工首家海外银行落户巴西
  12. Latex002 | 详细教程:LaTeX 编译器哪个好?——如何在 Visual Studio Code 中全流程编写 LaTeX(上篇)
  13. Flutter实现京东淘宝电商商品详情页效果
  14. 寒江独钓 Windows内核安全编程
  15. 大数据学习路线(完整详细版)
  16. Keras loss函数
  17. 机器人的自述作文_机器人的自述作文
  18. FT232RL-REEL全隔离原理图,带I/O保护,防电流倒灌等
  19. GB9706.1-2020安规三项之漏电流测试方法
  20. Github使用教程【转】

热门文章

  1. 一般的口腔诊所设计要点有哪些
  2. 如何对已经发布过的InfoPath模板进行修改
  3. 菜鸟学R语言(PCA)
  4. 全网超详细的【Axure】Axure RP 9的下载、安装、中文字体、授权
  5. 最受欢迎的idea配色方案
  6. Linux安装配置VNC(远程登录图形桌面系统)
  7. 微信小程序 iPhoneX 底部安全区域适配
  8. 酷比魔方smile配置参数
  9. 企业管理八大系统是什么?
  10. 一文带你走进软路由和 OpenWrt 系统