from bs4 import BeautifulSoupimport rehtml = """<div class="ACA_TabRow ACA_FLeft"> Mailing <br/> 1961 MAIN ST #186 <br/> WATSONVILLE, CA, 95076 <br/> United States <br/></div>"""soup = BeautifulSoup(html,"lxml")items = soup.find(class_="ACA_TabRow")items_list = items.text.split('\n')results = [ x.strip() for x in items_list if x.strip() != '' ]输出:print (results)['Mailing', '1961 MAIN ST #186', 'WATSONVILLE, CA, 95076', 'United States']
1 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
它只是带有值26(十进制 38)的字节的表示,这是'&'ASCII 中的字符。
如果您打印您使用的字节文字的实际字节值,您可以清楚地看到这一点:
>>> print(' '.join('%02x' % b for b in b'\x00\x00\x04\x12\xaa\x12\x12&'))
00 00 04 12 aa 12 12 26
与repr所述的bytearray物体倾向于代表字节使用ASCII字符,而不是六角逸出只要有可能。所以它会更喜欢表示'&'而不是'\x26',即使它们在技术上是等效的:
>>> bytearray([0x00, 0x00, 0x04, 0x12, 0xAA, 0x12, 0x12, 0x26])
bytearray(b'\x00\x00\x04\x12\xaa\x12\x12&')
>>> b'\x26' == b'&'
True
添加回答
举报
0/150
提交
取消