删除连续Python中的重复单词

时间:2018-06-11 03:45:17

标签: python beautifulsoup screen-scraping

事实证明我正在使用beautifulsoup,当在表格中过滤时,我得到的数据如下:

["<td>9111/2018 2222/18</td>", '<td style="font-size: small;">AINDUSTRIAL </td>', 
 "<td>18-05-2018</td>", "<td>Juz. 5 Posá<td>POSA</td></td>", 
 "<td>POSA</td>"]

我只需要提取"<td>" "Juz 5. Posá"(尽管我正在做的事情,名称会有所不同),但我只需要该列。我留下代码,因为我设法输出是:

Juz. 5 PosáPOSA

我只需要Juz。 5波萨,但不幸的是我说了另一个字。那么代码,当然,非常感谢你!

soup = BeautifulSoup(html.text,from_encoding="utf-8")

table = soup.findChildren('table')[0]
for row in table.find_all("tr")[1:]:
    col = row.find_all("td")
    print(col[3].text.replace('\n',''))
    if not cells:
        continue

1 个答案:

答案 0 :(得分:0)

不确定这是否是您要找的,但这里有两个解决方案。

解决方案#1

重复删除字符“&lt ;,&gt;,/,td”

for i in range(len(x)):
  x = x.replace("<", "")
  x = x.replace(">", "")
  x = x.replace("/", "")
  x = x.replace("td", "")
print(x)

OR

解决方案#2

首先选择列表项[3]

x = x[3]

从字符串中选择前4个字符,因为它以

开头
x = x[4:]

然后找到“&lt;”的索引因为下一个td标签将以&lt;并删除&lt;之后的所有内容指数

print(x[:x.index("<")])