我很高兴过去几天一直在学习python。今天我要讲一个叫做网络抓取的话题。我试图刮除div中的所有p标签,除了前3个p标签。因为p标记没有类或id,所以我找不到方法取消它们
我的代码:
from bs4 import BeautifulSoup
data = '''<div class="one">
<p style="color:red">Dummy Text</p>
<p style="color:red">Unwanted Text</p>
<p style="color:red">No Text</p>
<p style="color:red">Lorem ipsum dolor sit amet</p>
<p style="color:red">sed do eiusmod tempor incididunt</p>
<p style="color:red">consectetur adipiscing elit</p>
<p style="color:red">ut labore et dolore magna</p>
</div>'''
text = BeautifulSoup(data, 'html.parser')
for result in text.find_all('p'):
print(result.get_text())
我的输出:
我需要的是:
由于我是SOF新手,请在评论中提及我是否违反了任何准则。
方法一:
根据您的要求查找所有p
标签和索引
soup = BeautifulSoup(data, 'html.parser')
soup.find_all("p")[3:]
方法二:
soup = BeautifulSoup(data, 'html.parser')
data=soup.select_one("div > p:nth-of-type(2)")
data.find_next().find_next_siblings()
代码细目:
首先使用选择一个
方法,并使用css选择器查找p标记,其中
数据
返回
在最后一行中,我们将找到下一个元素及其同级
输出(两种方法相同):
[<p style="color:red">Lorem ipsum dolor sit amet</p>,
<p style="color:red">sed do eiusmod tempor incididunt</p>,
<p style="color:red">consectetur adipiscing elit</p>,
<p style="color:red">ut labore et dolore magna</p>]
您应该将div字符串添加到数组中以存储它们。然后应该删除数组的前三个元素。可以这样做:
text = BeautifulSoup(data, 'html.parser')
p_list = []
for result in text.find_all('p'):
p_list.append(result.get_text())
# this selects all elements from the list after the third
p_list = p_list[3:]
这将为您提供一个包含除前三个元素之外的所有p元素的列表。
我是编程新手,我正试图建立一个网站。 该网站是一个在线赌场(https://www.888casino.it/live-casino/#filters=all-轮盘赌),我只需要刮取其中一个显示的数字(特定位置中包含的数字大约每30秒改变一次,但我稍后会考虑这个问题)。 我要刮取的数字包含在span标记中,我无法找到它,因为它们没有id或类。因此,我考虑定位包含span标记的div标记,然后使用函
“我妈妈有一双蓝眼睛,我爸爸有一双深绿色的眼睛”。我想用JSOUP解析这个句子,并在android textview上用粗体和彩色文本打印出来。这里的“蓝色”是大胆的蓝色。“深绿色”是大胆的颜色。 我需要解析上述html代码,并需要如下显示: 这是一个标题 我母亲有蓝色的眼睛,我父亲有深绿色的眼睛 这是另一个标题 这是一段 下面是我的程序。考虑到文档doc==获取上面的html; 有人能帮我解决吗
我需要从Brother P-Touch 9800系列标签打印机打印标签,该打印机通过USB连接。 我使用的是SDK附带的示例项目,因此代码本身应该没有任何问题,但不会打印出来。没有任何类型的错误消息,它不会暂停或崩溃,它只是不打印。“使用Bpac”中包含了Bpac参考。 我试过用普通的编辑器打印,效果很好,所以电脑有连接,打印机也能工作。 有人有什么建议或者知道问题可能是什么吗?
我在stackoverflow进行了彻底的搜索,但没有找到合适的解决方案。我正在清理一个遗留的网站,我想提取所有的标签和输入名称。旧网页的html格式如下所示 我想使用python提取输出,并将beautifulsoup作为 我确实尝试了findall方法,但失败了,因为我需要标签(文本)和输入标签名称一起,有没有解决方案与标签文本的多个html标签报废?谢谢 我是一个新的网页刮削和这里的代码,我
如何从事件处理程序中的对象打印多个键? 这里是链接到我的代码-https://codesandbox.io/s/suspicious-hamilton-erkqv 在第35行,我用对象“x”调用事件处理程序ChangeName。我可以打印一个名为“name”(x.name)的键。我如何打印x对象的所有3个道具(名称、id、类型)?? 尝试将x转换为object.keys(x)的数组,但当我循环通过
我使用Jsoup的elements类来获取 爪哇代码 HTML代码