【发布时间】:2017-02-14 00:30:26
【问题描述】:
我正在使用 BS4 和 Python 3.5 解析网页。 尝试从如下所示的 div 中仅提取用户名(链接文本):
<div class="about"><a href="es_viewprofile.aspx?profile_id=110181766">claudiakenzo</a> 33 Pasar el rato <font color="green">En línea</font></div>
我的目标是只获取 div 的第一部分,在本例中为字符串“claudiakenzo”
这是我正在尝试使用的代码:
for link in soup.find_all("div", {'class': 'about'}):
print(username = link.text)
理论上我应该得到我想要的,但是没有......我得到的是输出:
claudiakenzo 33 Pasar el rato En línea
我不想要其中的“33”、“Pasar el Rato”或“En línea”部分。 我做错了什么以及提取我需要的正确代码是什么? 不幸的是,一些用户名也包含数字,所以使用 re 很复杂......但我觉得必须有比使用 re 更简单的方法来做到这一点。
PS- 如果 Selenium 的问题有更简单的解决方案,我也愿意尝试。 谢谢!
【问题讨论】: