python爬虫 正则表达式解析


Posted in Python onSeptember 28, 2019

这篇文章主要介绍了python爬虫 正则表达式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

- re.I # 忽略大小写
- re.M # 多行匹配,将正则作用到源数据的每一行
- re.S # 单行匹配,将正则作用到整个源数据,输出一个整体字符串(包括换行符也打印)

string = '''fall in love with you
i love you very much
i love she
i love her'''
# 去除以i开头的每一行数据
re.findall('^i.*',string,re.M)

['i love you very much', 'i love she', 'i love her']

#匹配全部行
string1 = """细思极恐
你的队友在看书
你的敌人在磨刀
你的闺蜜在减肥
隔壁老王在练腰
"""
re.findall('.*',string1,re.S)

['细思极恐\n你的队友在看书\n你的敌人在磨刀\n你的闺蜜在减肥\n隔壁老王在练腰\n', '']

爬取糗事百科中所有的图片进行保存

import requests
import re
import urllib
import os

url = 'https://www.qiushibaike.com/pic/page/%d/?s=5170552'
# 自定义请求头信息
headers = {
  'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36'
}
# 判断是否存在名为qiutu的文件夹,如果不存在则创建文件夹
if not os.path.exists('./qiutu'):
  os.mkdir('./qiutu')
# 手动输入开始页,结束页
start_page = int(input('start>>>'))
end_page = int(input('end>>>'))

for page in range(start_page,end_page+1):
# 按照每页url形式拼接指定url
  new_url = format(url%page)

# 发起请求
  page_text = requests.get(url=new_url,headers=headers).text

# 使用正则找出page_text页面中所有图片url
  img_url_list = re.findall('<div class="thumb">.*?<img src="(.*?)" alt=.*?</div>',page_text,re.S)

# 给每一个图片url添加https协议头
  for img_url in img_url_list:
    img_url = 'https:' + img_url


 # 将图片url切割去除图片名称,作为存储时图片的名称
    img_name = img_url.split('/')[-1]
    img_path = 'qiutu/' + img_name、


 # 对图片做持久化存储
    urllib.request.urlretrieve(url=img_url,filename=img_path)
    print(img_path,'下载成功')
print('over')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python脚本将Bing的每日图片作为桌面的教程
May 04 Python
Python实现的十进制小数与二进制小数相互转换功能
Oct 12 Python
python实现点对点聊天程序
Jul 28 Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 Python
对python中数组的del,remove,pop区别详解
Nov 07 Python
Python 实现域名解析为ip的方法
Feb 14 Python
对Python3 goto 语句的使用方法详解
Feb 16 Python
对python 调用类属性的方法详解
Jul 02 Python
python数据分析工具之 matplotlib详解
Apr 09 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
Python如何使用27行代码绘制星星图
Jul 20 Python
Visual Studio Code搭建django项目的方法步骤
Sep 17 Python
python爬虫 Pyppeteer使用方法解析
Sep 28 #Python
python安装scipy的步骤解析
Sep 28 #Python
python网络爬虫 CrawlSpider使用详解
Sep 27 #Python
python numpy存取文件的方式
Apr 01 #Python
100行Python代码实现每天不同时间段定时给女友发消息
Sep 27 #Python
使用Fabric自动化部署Django项目的实现
Sep 27 #Python
Win10+GPU版Pytorch1.1安装的安装步骤
Sep 27 #Python
You might like
制作美丽的拉花
2021/03/03 冲泡冲煮
PHP中文URL编解码(urlencode()rawurlencode()
2010/07/03 PHP
php实现zip文件解压操作
2015/11/03 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
javascript prototype原型操作笔记
2009/12/07 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
js实现多张图片延迟加载效果
2017/07/17 Javascript
React中阻止事件冒泡的问题详析
2019/04/12 Javascript
js变量值传到php过程详解 将php解析成数据
2019/06/26 Javascript
在layui tab控件中载入外部html页面的方法
2019/09/04 Javascript
详解Howler.js Web音频播放终极解决方案
2020/08/23 Javascript
nginx部署多个vue项目的方法示例
2020/09/06 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
2020/11/05 Javascript
[01:12:27]EG vs Secret 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
python3.3实现乘法表示例
2014/02/07 Python
python爬虫之百度API调用方法
2017/06/11 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
python实现简单名片管理系统
2018/11/30 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
python退出命令是什么?详解python退出方法
2018/12/10 Python
Python如何调用JS文件中的函数
2019/08/16 Python
Python绘制股票移动均线的实例
2019/08/24 Python
Python的Django框架实现数据库查询(不返回QuerySet的方法)
2020/05/19 Python
利用CSS3实现炫酷的飞机起飞动画
2016/09/17 HTML / CSS
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
顶撞领导检讨书
2014/01/29 职场文书
机电专业求职信
2014/06/14 职场文书
装修施工安全责任书
2014/07/24 职场文书
农业生产宣传标语
2014/10/08 职场文书
学校党的群众路线教育实践活动整改措施
2014/10/25 职场文书
简单的离婚协议书范本
2014/11/16 职场文书
介绍长城的导游词
2015/01/30 职场文书
家长高考寄语
2015/02/27 职场文书
初中生物教学反思
2016/02/20 职场文书
python字符串常规操作大全
2021/05/02 Python