python爬虫爬虫 猫眼电影和电影天堂数据猫眼电影和电影天堂数据csv和和mysql存储过程解存储过程解
析析
字符串常用方法字符串常用方法
# 去掉左右空格
'hello world'.strip() # 'hello world'
# 按指定字符切割
'hello world'.split(' ') # ['hello','world'] # 替换指定字符串
'hello world'.replace(' ','#') # 'hello#world'
csv模块模块
作用:将爬取的数据存放到本地的csv文件中
使用流程
导入模块
打开csv文件
初始化写入对象
写入数据(参数为列表)
import csv
with open('test.csv','w') as f:
writer = csv.writer(f) # 初始化写入对象
# 写一行
writer.writerow(['超哥哥',20])
writer.writerow(['步惊云',22])
with open('test.csv','a') as f:
writer = csv.writer(f)
# 写多行
data_list = [('聂风',23),('秦霜',30)] writer.writerows(data_list)
Windows中使用csv模块默认会在每行后面添加一个空行,使用newline=”可解决
with open(‘xxx.csv’,’w’,newline=”) as f:
猫眼电影猫眼电影top100抓取案例抓取案例
确定URL网址
猫眼电影 – 榜单 – top100榜 目标
电影名称、主演、上映时间 操作步骤
1、查看是否为动态加载
右键 – 查看网页源代码 – 搜索爬取关键字(查看在源代码中是否存在)
2、找URL规律
第1页:https://maoyan.com/board/4?offset=0
第2页:https://maoyan.com/board/4?offset=10
第n页:offset=(n-1)*10
3、正则表达式
<div class=”movie-item-info”>.*?title=”(.*?)”.*?class=”star”>(.*?)</p>.*?releasetime”>(.*?)</p>
4、编写程序框架,完善程序
打印程序执行时间
随机的User-Agent,(确保每次发请求使用随机)
数据爬下来后做处理(字符串),定义成字典
一条龙: 获取 -> 调用解析 -> 数据处理
猫眼电影数据存入本地 maoyanfilm.csv 文件
from urllib import request
import time
import re