python-3.x - 如何使用python beautifulsoup在表格中的行之间提取蓝色隐藏文本
问题描述
尝试在第 2 行和第 3 行之后爬取表格行中的所有隐藏评论,但无法提取。
我已尝试使用以下代码来提取这些评论,但失败了。下面是我的代码。请帮助我解决这个问题。
from bs4 import BeautifulSoup,Comment
import requests
r =requests.get('http://www.esuppliersindia.com/krishna-agro-
traders/aboutus-p17322178-u10731500-swa.html')
soup = BeautifulSoup(r.text,'lxml')
table = soup.find('table',class_='text-listing')
trs = table.find_all('tr')
for tr in trs[2:3]:
print(tr.text)
for tr in trs[3:4].find_next_sibling('td'):
print(tr.text)
解决方案
我不确定您是否正在关注表格内的以下评论。
from bs4 import BeautifulSoup,Comment
import requests
r =requests.get('http://www.esuppliersindia.com/krishna-agro-traders/aboutus-p17322178-u10731500-swa.html')
soup = BeautifulSoup(r.text,'lxml')
table = soup.find('table',class_='text-listing')
comments=table.find_all(string=lambda text:isinstance(text,Comment))
print(comments[0].split('</tr>')[0])
for i in range(1,len(comments)):
print(comments[i])
我会这样打印输出。
<td align="right" bgcolor="#FFFFFF" class="text-f11-b">No. Of Employees</td>
<td bgcolor="#FFFFFF" class="text-f11">10</td>
<tr>
<td align="right" bgcolor="#FFFFFF" class="text-f11-b">Export Turnover</td>
<td bgcolor="#FFFFFF" class="text-f11"></td>
</tr>
<tr>
<td align="right" valign="top" bgcolor="#FFFFFF" class="text-f11-b">Annual Turnover</td>
<td valign="top" bgcolor="#FFFFFF" class="text-f11">10 </td>
</tr>
<tr>
<td align="right" valign="top" bgcolor="#FFFFFF" class="text-f11-b">Import Turnover</td>
<td valign="top" bgcolor="#FFFFFF" class="text-f11"> </td>
</tr>
<tr>
<td align="right" valign="top" bgcolor="#ffffff" class="text-f11-b">Bankers</td>
<td valign="top" bgcolor="#ffffff" class="text-f11">Hdfc Bank </td>
</tr>
推荐阅读
- php - 如何以编程方式将图像上传到 Wordpress,但防止它们出现在媒体库中?
- c# - 不同端口映射时.net核心与Docker Https错误重定向
- sql - 如何在键值对中搜索特定键并使用sql函数返回它的对应值
- content-security-policy - CSP:frame-src 违规,带有空的阻塞 uri
- animation - 如何从组g svg中停止单个孩子的动画?
- azure - Terraform AKS nsg 安全规则出错
- android - 如何使用两个编辑字段和一个提示制作 TextInputLayout?
- matlab - 如何检索状态块的句柄?MATLAB
- mysql - 使用 docker-compose 按顺序注入 .sql 文件
- c# - 如何验证需要传递到硬编码路径以运行 File.Exists 的子文件夹(名称会有所不同)