【发布时间】:2020-04-15 22:28:47
【问题描述】:
我是网络抓取的新手。我无法从网页中获取字段(用户名)。
这是包含我感兴趣的字段的网页的 HTML。
<div class="block-body">
<div class="block-row block-row--separated">
<div class="block-row block-row--separated">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dl class="pairs pairs--columns pairs--fixedSmall">
<dt>YouTube Username</dt>
<dd>
GET_THIS_FIELD
</dd>
</dl>
<dl class="pairs pairs--columns pairs--fixedSmall">
以下是我面临的问题:
我无法提取该字段,因为有多个对象具有相同的类,文本选项不起作用,我不知道如何找到解决方案。
由于我访问的所有页面中都没有出现 YOUTUBE USERNAME 字段,因此我需要包含一个控件。
我尝试了一切,这只是最后一次尝试。
profile_content = profile.content
soup2 = BeautifulSoup(profile_content, features="lxml")
if soup2.find(text=re.compile('^YouTube Username$')):
user_channel = soup2.find("dl", {'class': 'pairs pairs--columns pairs--fixedSmall'}).find_next_siblings('dd')
else:
user_channel = "none"
感谢您的帮助!
【问题讨论】:
-
请edit您的问题,并将
HTML部分作为代码而不是img,以便我们手动检查和验证。
标签: python web-scraping beautifulsoup