【发布时间】:2019-08-12 15:36:15
【问题描述】:
Website in question。现在我只对最后一个季度进行分析,如果我要扩展到过去的 4-5 个季度,是否有更好的方法来自动化这个任务,而不是通过一次又一次地设置时间范围然后提取来手动完成表值?
我尝试做的事情:
import bs4 as bs
import requests
import lxml
resp = requests.get("http://www.scstrade.com/stockscreening/SS_CompanySnapShotHP.aspx?symbol=HBL")
soup = bs.BeautifulSoup(resp.text, "lxml")
mydivs = soup.findAll("div", {"class": "breadcrumbs"})
print(mydivs)
我得到了什么:
[<div class="breadcrumbs">
<ul>
<li class="breadcrumbs-home">
<a href="#" title="Back To Home">
<i class="fa fa-home"></i>
</a>
</li>
<li>Snapshot / <span id="ContentPlaceHolder1_lbl_companyname">HBL - Habib Bank Ltd.</span> / Historical Prices
</li>
</ul>
</div>, <div class="breadcrumbs" style="background-color:transparent;border-color:transparent;margin-top:20px;">
<ul>
<div class="bootstrap-iso">
<div class="tp-banner-container">
<div class="table-responsive">
<div id="n1">
<table class="table table-bordered table-striped" id="list"><tr><td>Company Wise</td></tr></table>
<div id="pager"></div>
</div>
</div>
</div>
</div>
</ul>
</div>]
检查source,该表位于名为“breadcrumbs”的 div 类中(我通过“inspect element”获得了它),但我没有看到所有值都定义/存储在页面源中的位置。对网络抓取有点陌生,我应该在哪里寻找这些值?
另外一共有 7 页,我目前只是试图从第一个 oage 中刮掉表格,我将如何刮掉我的结果的所有 x 页,然后将它们转换为 pandas 数据框..
【问题讨论】:
标签: python-3.x web-scraping beautifulsoup