抓取网络数据时无法删除 \r\n\t?
Unable to remove \r\n\t while scraping web data?
当我从网站上抓取 html table 时,我想删除所有 \r\n\t 开头和结尾的 td.text
内容。
这是我的代码:
row.append(td.text.strip('\n').strip('\r').strip('\t').strip('"').strip().strip(':').strip(' '))
没有 strip 函数,结果是这样的:
[['BP / Age',
': \r\n\r\n USA/ 2',
'FirstName',
':\r\n\t \t \r\n Walker\r\n\t \n\n']]
使用 strip 函数,结果如下所示:
[['BP / Age',
': \r\n\r\n USA/ 2',
'FirstName',
':\r\n\t \t \r\n Walker']]
我怎样才能摆脱剩余的 \r\n\t?
不要尝试逐步剥离。然后您需要指定字符出现的确切顺序,这几乎不可能对所有字符串都相同,并且必须反映前导部分和尾随部分的顺序。
您可以一次全部剥离:
row.append(td.text.strip('\n\r\t": '))
演示:
>>> ':\r\n\t \t \r\n Walker\r\n\t \n\n'.strip('\n\r\t": ')
'Walker'
当我从网站上抓取 html table 时,我想删除所有 \r\n\t 开头和结尾的 td.text
内容。
这是我的代码:
row.append(td.text.strip('\n').strip('\r').strip('\t').strip('"').strip().strip(':').strip(' '))
没有 strip 函数,结果是这样的:
[['BP / Age',
': \r\n\r\n USA/ 2',
'FirstName',
':\r\n\t \t \r\n Walker\r\n\t \n\n']]
使用 strip 函数,结果如下所示:
[['BP / Age',
': \r\n\r\n USA/ 2',
'FirstName',
':\r\n\t \t \r\n Walker']]
我怎样才能摆脱剩余的 \r\n\t?
不要尝试逐步剥离。然后您需要指定字符出现的确切顺序,这几乎不可能对所有字符串都相同,并且必须反映前导部分和尾随部分的顺序。
您可以一次全部剥离:
row.append(td.text.strip('\n\r\t": '))
演示:
>>> ':\r\n\t \t \r\n Walker\r\n\t \n\n'.strip('\n\r\t": ')
'Walker'