Python爬虫—为表单数据快速添加单引号(2021最有效解决方法)
Posted 汤米先生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫—为表单数据快速添加单引号(2021最有效解决方法)相关的知识,希望对你有一定的参考价值。
文章目录
前言
在练习爬虫时,需要获取表单数据存入字典中,但是需要给原始数据一个个加单引号,相当麻烦,网上查找到的解决方法都不能够完全解决问题,于是我琢磨着自己解决了,现在就分享给大家
一. 解决方法
1.复制表单数据到Pycharm中
2. Ctrl+R 调出正则匹配工具栏
输入以下内容,并点亮图标
(\\w+)\\: ?\\r?(.*\\S?)
'$1':'$2',
提醒一下,后面的‘,’也要加上(并非多余)
3. 选中需要添加单引号的内容
点击全部替换
然后问题就解决了
二. 本方法优点和原理
1. 网络上其他的解决方法
参考网络上其他解决方法,与本方法相比,只是 正则表达式不同,在解决此问题时,大多数的正则表达式都是这样:
这种方法并不能解决问题,验证图如下
不仅没有检测到所有数据,而且添加的单引号也不完整。
也有这样的
同样也是检测不完整,虽然选中的加全了单引号,但是加在了前面,不美观
这些方法多多少少都有问题
原理:
. 匹配除换行符 \\n 之外的任何单字符。要匹配 . ,请使用 \\. 。
* 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \\*。
? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \\?。
( ) 标记一个子表达式的开始和结束位置。
$ 匹配输入字符串的结尾位置。
\\n 匹配一个换行符。等价于 \\x0a 和 \\cJ。
\\S 匹配任何非空白字符。等价于 [^ \\f\\n\\r\\t\\v]。
\\w 匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
\\ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'\\n' 匹配换行符。
+ 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。
2. 此方法讲解
具体的意思就不再解释了,上面都有相应符号的解释,大家可以参考一下。
我就是把前面的识别一切字符的改成了只识别数字和字母,后面也多加了对空白和换行的识别。
以上是关于Python爬虫—为表单数据快速添加单引号(2021最有效解决方法)的主要内容,如果未能解决你的问题,请参考以下文章