0

我正在使用 urllib2 抓取一些股票信息。

我的一些代码如下。

    cap_url = "http://wisefn.stock.daum.net/company/c1010001.aspx?cmp_cd=%s" % code
    cap_req = urllib2.Request(cap_url)
    cap_data = urllib2.urlopen(cap_req).read()
    ~
    ~
    ~
    depr_url = "http://wisefn.stock.daum.net/company/cF3002.aspx?cmp_cd=%s&frq=Q&rpt=ISM&finGubun=MAIN" % code
    depr_req = urllib2.Request(depr_url)
    depr_data = urllib2.urlopen(depr_req).read()
    ~
    ~
    ~
    transaction_url = "http://www.shinhaninvest.com/goodicyber/mk/1206.jsp?code=%s" % code
    transaction_data = urllib2.urlopen(transaction_url).read()
    soup = BeautifulSoup(transaction_data, fromEncoding="utf-8")

如您所知,%s 是股票代码。使用给定的股票代码,我正在抓取所有股票信息。股票代码总数超过1,600个。然后我用 xlwt 将收集到的信息写入 Excel。

但是,我无法连接到某些 url 或获取那些我可以手动输入该 url 的信息。

有什么问题?以及如何加快抓取页面的速度?

4

1 回答 1

0

首先,我会检查网站的 robots.txt 文件。它很可能禁止本机 python 用户代理。所以你可以考虑改变 urllib2 的用户代理。第二。网站内容可能是由 JavaScript 生成的,如果是,则 urllib2 无法对其进行评估。为此,您可以使用 Selenium 驱动程序或 PyQt 框架或类似的。

于 2012-12-26T19:59:36.093 回答