Crossin的编程教室
标题:
【范例:如何正确地提问】为什么抓取到的网页不能去除 \...
[打印本页]
作者:
crossin先生
时间:
2022-10-9 12:46
标题:
【范例:如何正确地提问】为什么抓取到的网页不能去除 \...
import re
a='<th>得分排名</th>\n\t\t\t\t\t\t<th>推荐排名</th>\n\t\t\t\t\t\t<th>备注</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t'
a1=re.sub(r'\n|\t','',a)
print(a1)
复制代码
上述代码正常,但是我去抓取网站,结果里的 \t \n 就不能去除
代码如下,运行环境 python 3.7 IDLE:
import requests
import re
import sys
def get_info(url):
r=requests.get(url)
r.encoding='utf-8'
if r.status_code==200:
print('获取成功!')
rs=re.sub(r'\\n|\\t','',r.text)
print(rs)
else:
print('获取失败,请重新尝试!')
url='http://xxxxxxxxxxxxxxxxxxx.cn/?operationEndTime=&selectTimeName=noticeTime' # 网站不便公开
get_info(url)
复制代码
部分结果如下,print出来里面依然有很多\n\t:
三、采购结果</strong></h4>\n<div class="noticeBidResult-noticeBidResult _notice_content_noticeBidResult-noticeBidResult supplier" id="_notice_content_noticeBidResult-noticeBidResult">\n\t<div>\n\t\t<p class="u-content"...</span>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</tbody>\n\t\t</table>\n\t</div>\n</div>\n<h4><strong>四、主要标的信息</strong></h4>\n<div class="noticeBidResult-noticeBidResult _notice_content_noticeBidResult-noticeBidResult supplierDetail">\n\t<div>\n\t\t<p class="u-content">合同包1(网络安全设备延保及网络安全三级登记保护测评):</p>\n\t\t<div>\n\t\t\t\n\n\t\t\t<div>\n\t\t\t\t<strong>
复制代码
请问是为什么?怎么能去掉?
2022-10-9 16:16 上传
下载附件
(241.08 KB)
2022-10-9 16:17 上传
下载附件
(347.62 KB)
作者:
crossin先生
时间:
2022-10-9 12:47
print出来的字符里面有 \n \t,说明字符串里面是 \\n \\t,不然是看不到的
通过 print(repr(rs)) 查看原始字符串就会发现
所以解决办法就是,把替换 \n \t 改成 \\n \\t
欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/)
Powered by Discuz! X2.5