Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
美化组-删除包含';科尔斯潘';属性Python_Python_Beautifulsoup - Fatal编程技术网

美化组-删除包含';科尔斯潘';属性Python

美化组-删除包含';科尔斯潘';属性Python,python,beautifulsoup,Python,Beautifulsoup,在到达[I.text.strip之前,我需要删除任何包含colspanzzz的行 HTML: <td black="" colspan='3D"8"'>zzz</td> <td>1</td> <td>2</td> <td>3</td> soup = bs.BeautifulSoup(text, 'lxml') table = soup.find('table

在到达
[I.text.strip
之前,我需要删除任何包含colspan
zzz

HTML:

<td black="" colspan='3D"8"'>zzz</td>
<td>1</td>
<td>2</td>
<td>3</td>
soup = bs.BeautifulSoup(text, 'lxml')

table = soup.find('table')
table_rows = table.find_all('tr')

for tr in table_rows:
    td = tr.find_all('td')
    print(td)
row = [i.text.strip('\\r\\n').strip('=\\r\\nspan>').strip('=\\r\\n').strip('<=\\r\\n/').strip('\\r\\n') for i in td]
zzz
1.
2.
3.
Python:

<td black="" colspan='3D"8"'>zzz</td>
<td>1</td>
<td>2</td>
<td>3</td>
soup = bs.BeautifulSoup(text, 'lxml')

table = soup.find('table')
table_rows = table.find_all('tr')

for tr in table_rows:
    td = tr.find_all('td')
    print(td)
row = [i.text.strip('\\r\\n').strip('=\\r\\nspan>').strip('=\\r\\n').strip('<=\\r\\n/').strip('\\r\\n') for i in td]
soup=bs.beautifulsou(文本“lxml”)
table=soup.find('table')
table_rows=table.find_all('tr')
对于表_行中的tr:
td=tr.find_all('td'))
印刷品(td)

行=[i.text.strip('\\r\\n').strip('=\\r\\nspan>).strip('=\\r\\n').strip('=\\r\\n').strip('=\\r\\n').strip('Python列表理解支持动态筛选,如果不是i.get('colspan'),则只需执行put
在列表中,它将在计算
expr

[expr for i in td if not i.get('colspan')]
这应该可以回答你的问题,但是我关心的是你是如何构建
td
,你似乎覆盖了
td
,在你的
for tr表中的行中循环每一次迭代。只留下
的最终结果。在中查找所有

完全覆盖
td
以进行所有未来计算,并使用
colspan
属性过滤掉所有元素-

td=list(过滤器(lambda x:not x.get('colspan'),td))

为什么要删除它?只要在列表中添加一个
如果不是i.get('colspan')
就可以了?我想在编辑剩余的文件之前删除它,因为有些文件与colspan一起丢失了,它会干扰我的数据,尤其是当我不需要时them@Chambo
td=list(过滤器(lambda x:not x.get('colspan'),td))