使用Python中的PyQuery解析本地与在线HTML页面

时间:2014-12-22 01:35:49

标签: python html parsing pyquery

鉴于以下URL

   http://cisbp-rna.ccbr.utoronto.ca/TFreport.php?searchTF=T00022_0.6

此代码解析它没有问题:

from pyquery import PyQuery as pq
url= "http://cisbp-rna.ccbr.utoronto.ca/TFreport.php?searchTF=T00022_0.6"
page = pq(url)
for tb in page('table.tf_report').eq(0).items():
    print tb("tr").eq(4)("td").eq(0).text()

打印

 PF00642 (zf-CCCH) PF00098 (zf-CCHC) PF00076 (RRM_1)

但是当我在本地将页面下载到我的磁盘时,它无法解析它。

from pyquery import PyQuery as pq
# this is local HTML
url = "T00022_0.6.html"
page = pq(url)
for tb in page('table.tf_report').eq(0).items():
    print tb("tr").eq(4)("td").eq(0).text()

什么都不打印。

上面的本地文件可以下载here.

做正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

本地文件名不是URL,即使您将其存储在名为url的变量中也是如此。尝试:

page = pq(filename=url)

或者,您可以使用实际的file:网址。