0


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

本文转载自: https://blog.csdn.net/Tom197/article/details/119208697
版权归原作者 汤米先生 所有, 如有侵权,请联系我们删除。

“Python爬虫—为表单数据快速添加单引号(2021最有效解决方法)”的评论:

还没有评论