Python进阶练习与爬取豆瓣T250的影片相关信息
(一)Python进阶练习
正所谓要将知识进行实践,才会真正的掌握
于是就练习了几道题:求素数,求奇数,求九九乘法表,字符串练习
import re
#求素数
i=1;
flag=0
while(i<=100):
flag=0
j=2;
while(j<i):
if(i%j==0):
flag=1
break;
j=j+1
if(flag==0):
print(i,end=' ')
i=i+1 #求奇数
for i in range(1,101):
if(i%2==1):
print(i,end=' ') #字符串练习
str="你好$$$我正在学 Python@#@#现在需要&*&*&修改字符串"
k=str.replace('$$$','').replace('@#@#',' ').replace('&*&*&',' ')
print(k)
p=re.sub('[$@#&*]',' ',str)
print(p) #九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print("%d*%d=%d\t" %(j,i,i*j),end="")
print("")
(二)爬取静态网页
这次我们练习的实战是爬取静态网页,豆瓣T250电影的名字
首先我们分析一页有25个电影,我们想要250个,进行下一页的时候他的链接地址变成“https://movie.douban.com/top250?start=25”同理每翻一页就会增加25.我们就可以对这250个数据进行爬取了
我们要获取的信息是:电影名字,导演与主演以及时间类型,豆瓣评分,多少人评价
将这些信息存入到txt里面
import requests
from bs4 import BeautifulSoup def get_movie():
url = 'https://movie.douban.com/top250' #请求地址
headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}#创建头部信息
movie_list=[]
for i in range(0,10):
url = 'https://movie.douban.com/top250?start='+str(i*25)
response=requests.get(url,headers=headers)
soup=BeautifulSoup(response.text,"html.parser")
div_list = soup.find_all('div', class_='info')
for each in div_list:
title = each.find('div', class_="hd").span.text.strip()
info = each.find('div', class_='bd').p.text.strip()
info = info.replace('\\n', '').replace('\\xa0', '')
info = ' '.join(info.split())
star = each.find('span', class_='rating_num').text.strip()
people = each.find('div', class_='star').contents[7].text.strip()
movie_list.append([title, info, star, people])
return movie_list
movie=[]
movie=get_movie()
with open("Top_movie_250.txt","a+",encoding="utf-8") as f:
for i in range(len(movie)):
f.write(str(movie[i]))
f.write("\n")
f.close()
txt展示:
日期 | 开始时间 | 结束时间 | 中断时间 | 净时间 | 活动 |
3/12 | 20:30 | 21:45 | 0 | 75 | python练习与爬取T25的名字 |
3/12 | 22:00 | 22:30 | 5 | 25 | 爬取T250电影的名字,导演,评分等 |
总学习时长:100分钟,净代码行数:90行
Python进阶练习与爬取豆瓣T250的影片相关信息的更多相关文章
- 爬取豆瓣网图书TOP250的信息
爬取豆瓣网图书TOP250的信息,需要爬取的信息包括:书名.书本的链接.作者.出版社和出版时间.书本的价格.评分和评价,并把爬取到的数据存储到本地文件中. 参考网址:https://book.doub ...
- Python爬虫实例:爬取豆瓣Top250
入门第一个爬虫一般都是爬这个,实在是太简单.用了 requests 和 bs4 库. 1.检查网页元素,提取所需要的信息并保存.这个用 bs4 就可以,前面的文章中已经有详细的用法阐述. 2.找到下一 ...
- Python爬虫入门:爬取豆瓣电影TOP250
一个很简单的爬虫. 从这里学习的,解释的挺好的:https://xlzd.me/2015/12/16/python-crawler-03 分享写这个代码用到了的学习的链接: BeautifulSoup ...
- 基于python的scrapy框架爬取豆瓣电影及其可视化
1.Scrapy框架介绍 主要介绍,spiders,engine,scheduler,downloader,Item pipeline scrapy常见命令如下: 对应在scrapy文件中有,自己增加 ...
- python实例:自动爬取豆瓣读书短评,分析短评内容
思路: 1.打开书本“更多”短评,复制链接 2.脚本分析链接,通过获取短评数,计算出页码数 3.通过页码数,循环爬取当页短评 4.短评写入到txt文本 5.读取txt文本,处理文本,输出出现频率最高的 ...
- python爬虫+正则表达式实例爬取豆瓣Top250的图片
直接上全部代码 新手上路代码风格可能不太好 import requests import re from fake_useragent import UserAgent #### 用来伪造爬头部信息 ...
- python3爬取豆瓣排名前250电影信息
#!/usr/bin/env python # -*- coding: utf-8 -*- # @File : doubanmovie.py # @Author: Anthony.waa # @Dat ...
- Python网络爬虫 - 爬取中证网银行相关信息
最终版:07_中证网(Plus -Pro).py # coding=utf-8 import requests from bs4 import BeautifulSoup import io impo ...
- Python的scrapy之爬取豆瓣影评和排名
基于scrapy框架的爬影评 爬虫主程序: import scrapy from ..items import DoubanmovieItem class MoviespiderSpider(scra ...
随机推荐
- Xen入门系列四【Xen 管理实操】
1. 克隆一台虚拟机 # virt-clone -o base -n vm-clone -f /vm/vm-clone.img 参数说明: -o 原虚拟机的名称:必须为关闭或者暂停状态. -n 新虚拟 ...
- ADB命令-1
1.adb -s 指定设备号(用于已连接多个设备时) 2.adb install -r -t xxx 安装程序 3.adb pull 设备目录 本地目录 复制文件命令 4.adb push 向设 ...
- FastDFS安装部署
博主本人平和谦逊,热爱学习,读者阅读过程中发现错误的地方,请帮忙指出,感激不尽 服务器信息: Storage:192.168.247.20 Traker:192.168.247.21 一.搭建环境准备 ...
- 源码中TODO、FIXME和XXX的含义
前言: 今天在阅读Qt Creator的源代码时,发现一些注释中有FIXME英文单词,用英文词典居然查不到其意义! 实际上,在阅读一些开源代码时,我们常会碰到诸如:TODO.FIXME和XXX的单词 ...
- 渗透利器-BadUSB 控制外网主机详解 Teensy2.0++
准备工作 一块 Teensy2.0++ 的板子(淘宝一搜就有) Arduino编译器 1.8.7版本下载连接:arduino下载地址 Teensy插件 下载连接:Teensy下载地址 [外链图片转存失 ...
- Java IO: 异常处理
原文链接 作者:Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 流与Reader和Writer在结束使用的时候,需要正确地关闭它们.通过调用close()方法 ...
- 了解DocumentFragment 给我们带来的性能优化
首先我们需要了解 DocumentFragment 是什么? w3c 上面的详细解释:link here 我把关键点写下来了: DocumentFragment 节点不属于文档树,继承的 parent ...
- cesium入门示例-geoserver服务访问
1.wms服务访问 //wms服务 viewer.imageryLayers.addImageryProvider(new Cesium.WebMapServiceImageryProvider({ ...
- QQbug--QQ截图不显示保存类型
QQ软件bug--QQ截图不显示保存类型,设置显示后缀名也没用 问题: QQ截图截后,不通过对话框直接保存时,不显示保存类型,文件名下面的类型的框框是一片空白,在文件夹选项设置显示后缀名也没用 ...
- [PHP] 报错和“@” - 工作
以下几点关于报错和@的关系理解 在PHP中使用@加在某个语句前面,可以抑制错误在脚本的执行过程中输出到IO: 如果在某个语句上使用了@,则可以将语句内的各种嵌套的脚本可能存在的报错都会被抑制住: 如果 ...