1

我正在搞乱 BeautifulSoup,发现尽管代码或连接没有任何变化,但有时解析页面需要很长时间。有任何想法吗?

from bs4 import BeautifulSoup   
from urllib2 import urlopen               
#The particular state website:
site = "http://sfbay.craigslist.org/rea/"
html = urlopen(site)                     
print "Done"
soup = BeautifulSoup(html)                
print "Done"

#Get first 100 list of postings:
postings = soup('p')   
4

2 回答 2

0
postings = soup('p')  

这段代码不好。计算机必须检查每一行以确保 p 标记一一存在。

aTag = soup.findAll('a',class_='result_title hdrlnk')
for link in aTag:
    print(link.text)
于 2017-02-08T08:39:51.893 回答
0

如果出于某种原因你想阅读<a>标签中的文本,你可以这样做。

postings = [x.text for x in soup.find("div", {"class":"content"}).findAll("a", {"class":"hdrlnk"})]
print(str(postings).encode('utf-8'))

这将返回一个长度为 100 的列表。

于 2015-11-04T21:03:48.630 回答