【发布时间】:2018-11-21 15:58:50
【问题描述】:
我有以下代码可以在 value= 之后打印文本
soup = BeautifulSoup(html, 'lxml')
name = soup.find('input')['value']
print(name)
但是,该页面有多个具有相同类的 div,我尝试使用 findAll,但出现错误,只能打印第一个字段值,即名称。
请看附件截图
<div class="control-group"><label class="control-label required" for="client_appbundle_prospecttype_ProspectFirstContact_decision_timeframe">What date do you want to make a decision?</label>
<div class="controls"><input type="text" id="client_appbundle_prospecttype_ProspectFirstContact_decision_timeframe" name="client_appbundle_prospecttype[ProspectFirstContact][decision_timeframe]" required="required" class="input-small text-bound datepicker hasDatepicker"></div>
</div>
</div>
</div>
</div>
</div>
<div class="tab-pane active" id="prospect_consultation">
<div class="widget row-fluid">
<div class="span12">
<div class="navbar">
<div class="navbar-inner">
<h6>Personal details</h6>
</div>
</div>
<div class="well">
<div class="control-group">
<label class="control-label">Name</label>
<div class="controls">
Sam Test-March 2018
</div>
</div>
<div class="control-group">
<label class="control-label">Address and postcode</label>
<div class="controls">
</div>
</div>
<div class="control-group">
<label class="control-label">Mobile number</label>
<div class="controls">
12345678
</div>
</div>
<div class="control-group">
<label class="control-label">Email address</label>
<div class="controls">
test@test.com
</div>
</div>
谢谢!
【问题讨论】:
-
请通过edit 使用sn-p 工具来包含HTML,而不是图像。此外,您显示的 HTML 没有可见的输入标记元素。
-
我现在已经把代码上传到sn-p视图了。
-
你想从那个 sn-p 中提取什么?
-
嗨 QHarr,我正在尝试获取名称、地址和邮政编码、手机号码等字段中的值,该页面有许多带有不同标签的字段,所以我正在尝试使用 find_all产生错误,但是当我运行查找代码时,它只会打印第一个标签,即名称。
标签: python selenium web-scraping beautifulsoup