我是Python和网络抓取的初学者。我使用Beautiful Soup 4和python的html.parser来从网页上抓取一张桌子。实际的HTML表格都是文本,但是一些单元格包含大段文本,可能包含制表符和返回。
在我的输出表中,我在单元格中得到以下字符的集合:
1)[u' 2)\ r \ n 3)]] 4)在整个数据中我也会得到很多随机的'和'。
这些字符中没有一个出现在实际的html代码中。
我知道\ r \ n是新行和回车的特殊转义字符,但实际的html脚本中没有。我通过使用.strip()删除了显示在某些数据中的制表符转义码(\ t \ t)。
我想知道是否有人知道是什么原因导致这些特殊字符出现,更重要的是我如何摆脱它们?
非常感谢您的帮助。
干杯。
编辑:源代码:
response = requests.get(BASE_URL)
html = response.content
soup = BeautifulSoup(html,"html.parser")
table = soup.find('table', {'class': 'tablesorter'})
list_of_rows = []
for row in table.findAll('tr'):
list_of_cells = []
for cell in row.findAll('td'):
text = cell.text.replace(' ','')
dedented_text = textwrap.dedent(text).strip()
dedented_text = dedented_text.rstrip()
list_of_cells.append(dedented_text)
list_of_rows.append(list_of_cells)