爬虫爱用的一些python技巧
1.正则表达式
有时候提取到的数据不规整,需要用正则来匹配所需要展现出来的数据
学习链接:https://www.cnblogs.com/-chenxs/p/11352172.html,https://www.cnblogs.com/-chenxs/p/11352409.html
2.对数据的切分处理
有时候提取出来的数据字符串两边的内容或一边的内容不需要,或者去除字符串两边的空格、一些转移字符;
我们可以使用字符串切分或者strip()方法来对字符串两边的内容进行切割操作
3.format()方法
对字符串格式化的一种方式
比如我们爬虫对url处理,生成url列表的时候,要使url中一个参数的值按照某种规律变化时就会使用到format
url="http://www.xxx.com/a/b={}"
url.format(1) #那么b=1
url.format(i) for i in range(1,10) #打印出b=1-9的九条url
4.列表推导式
帮助我们快速的生成包含一堆数据的列表
>>>[i+10 for i in range(10)]
[10,11,12,...19] >>>["10月{}日".format(i) for i in range(1,10)]
["10月1日","10月2日",..."10月9日"]
5.字典推导式
帮助我们快速的生成包含一堆数据的字典
>>>{i+10:i for i in range(10)}
{10:0,11:1,12:2,...19:9}
>>>{"a{}".format(i):10 for i in range(3)}
{"a0":10,"a1":10,"a2":10}
6.三元运算符
赋值操作 if 条件 else 另外的值
---- if 后面的条件成立,就把if前面的结果赋值给a,否则把else后面的结果赋值给a
a=10 if 2>1 else 20 # a=10 a=10 if 2<1 else 20 # a=20
爬虫爱用的一些python技巧的更多相关文章
- 26个你不知道的Python技巧
Python是目前世界上最流行的编程语言之一.因为: 1.它容易学习 2.它用途超广 3.它有非常多的开源支持(大量的模块和库) 不好意思,优达菌又啰嗦了. 本文作者 Peter Gleeson 是一 ...
- python技巧 显示对象的所有属性
python技巧 显示对象的所有属性for attr in dir(ad):... print attr+":"+str(getattr(ad,attr))
- Python技巧——list与字符串互相转换
Python技巧——list与字符串互相转换 在Python的编程中,经常会涉及到字符串与list之间的转换问题,下面就将两者之间的转换做一个梳理. 1.字符串转换成list 命令:list() ...
- Python技巧—list与字符串互相转换
Python技巧-list与字符串互相转换 在Python的编程中,经常会涉及到字符串与list之间的转换问题,下面就将两者之间的转换做一个梳理. 1.list转换成字符串 命令:list() 例子: ...
- 你可能不知道的 Python 技巧
英文 | Python Tips and Trick, You Haven't Already Seen 原作 | Martin Heinz (https://martinheinz.dev) 译者 ...
- 【爬虫+情感判定+Top10高频词+词云图】“谷爱凌”热门弹幕python舆情分析
一.背景介绍 最近几天,谷爱凌在冬奥会赛场上夺得一枚宝贵的金牌,为中国队贡献了自己的荣誉! 针对此热门事件,我用Python的爬虫和情感分析技术,针对小破站的弹幕数据,分析了众网友弹幕的舆论导向,下面 ...
- Python爬虫入门教程 50-100 Python3爬虫爬取VIP视频-Python爬虫6操作
爬虫背景 原计划继续写一下关于手机APP的爬虫,结果发现夜神模拟器总是卡死,比较懒,不想找原因了,哈哈,所以接着写后面的博客了,从50篇开始要写几篇python爬虫的骚操作,也就是用Python3通过 ...
- 【网络爬虫】【java】微博爬虫(五):防止爬虫被墙的几个技巧(总结篇)
爬虫的目的就是大规模地.长时间地获取数据,跟我们正常浏览器获取数据相比,虽然机理相差不大,但总是一个IP去爬网站,大规模集中对服务器访问,时间一长就有可能被拒绝.关于爬虫长时间爬取数据,可能会要求验证 ...
- python技巧
python小技巧: 1.强烈建议使用Python的r前缀,就不用考虑转义的问题了. 2.正则表达式的使用: test = '用户输入的字符串' if re.match(r'正则表达式', test) ...
随机推荐
- Head First设计模式——代理模式
在HeadFirst设计模式中代理模式用了比较多的篇幅来讲解,其中的例子我感觉有些繁琐,所以我们这篇就不按照惯例用例子来阐述代理模式了.我们直接进入正题,分析模式本身的设计和解决的问题. 远程代理模式 ...
- js—二进制中1的个数
题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 做题思路 代码 function NumberOf1(n) { // write code here var cnt = 0 ...
- vscode自己常用的快捷键
(1)快速复制一行 ctrl + alt +
- 13.python内置模块之re模块
什么是正则? 正则表达式也称为正则,是一个特殊的字符序列,能帮助检查一个字符串是否与某种模式匹配.可以用来进行验证:邮箱.手机号.qq号.密码.url = 网站地址.ip等.正则不是python语言独 ...
- 复杂系统架构设计<1>
这两天开始读由Edward Crawley(爱德华 克劳利).Bruce Cameron(布鲁斯 卡梅隆).Daniel Selva(丹尼尔 塞尔瓦)著作的系统架构,一开始看目录以为是介绍系统软件架构 ...
- AndroidStudio中使用XML和Java代码混合控制UI界面实现QQ相册照片列表页面
场景 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新建Androi ...
- SparkShuffle机制
在早期版本的Spark中,shuffle过程没有磁盘读写操作,是纯内存操作,后来发现效率较低,且极易引发OOME,较新版本的Shuffle操作都加入了磁盘读写进行了改进. 1.未经优化的HashShu ...
- PG数据库常用操作
全量迁移 备份数据 $ pg_dump -h 172.19.235.145 -U <username> -d <database> > 20180704_dbpe.sql ...
- ts中基本数据类型(上)
/* 定义数组*/ var arr: number[] = [1, 2, 3]; var arr1: Array<number> = [1, 2, 3]; var arr2: [str ...
- 基于topsis和熵权法
% % X 数据矩阵 % % n 数据矩阵行数即评价对象数目 % % m 数据矩阵列数即经济指标数目 % % B 乘以熵权的数据矩阵 % % Dist_max D+ 与最大值的距离向量 % % Dis ...