Python Beautifulsoup提取十六进制值

2024-05-19 01:13:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在构建一个scraper,我想从一些标签中提取数据,因为它没有任何转换。但是beauthulsoup将一些十六进制值改为ASCII。例如,这个代码被转换成ASCII

html = """\
<title>&#x42;&#x69;&#x6C;&#x6C;&#x69;&#x6E;&#x67;&#x20;&#x61;&#x64;&#x64;&#x72;&#x65;&#x73;&#x73; - &#x50;&#x61;&#x79;&#x50;&#x61;&#x6C;</title>
<title>Billing address - PayPal</title>"""

下面是代码的一个小示例

^{pr2}$

但我想提取相同形式的数据。我相信BeautifulSoup4自动转换HTML实体,这是我不想要的。任何帮助都将不胜感激。在

顺便说一句,我使用的是python3.5和beautifulsoup4


Tags: 数据代码titlehtmlascii标签scraperx64
1条回答
网友
1楼 · 发布于 2024-05-19 01:13:16

您可以尝试使用re模块( Regular Expressions )。例如,下面的代码将提取title标记信息而不进行转换:(我假设您之前声明了html变量)

import re
result = re.search('\<title\>.*\<\/title\>',html).group(0)
print(result) # It'll print <title>&#x42;&#x69;&#x6C;&#x6C;&#x69;&#x6E;&#x67;&#x20;&#x61;&#x64;&#x64;&#x72;&#x65;&#x73;&#x73; - &#x50;&#x61;&#x79;&#x50;&#x61;&#x6C;</title>

您也可以对其他标记执行相同的操作

相关问题 更多 >

    热门问题