为什么我现在不知道这个网站的代码。在其他情况下,它可以正常工作。在
url = "http://www.i-apteka.pl/search.php?node=443&counter=all"
content = requests.get(url).text
soup = BeautifulSoup(content)
links = soup.find_all("a", class_="n63009_prod_link")
print links
在本例中,它打印“[]”,但显然有一些链接。
有什么想法吗?:)
Tags:
无论使用哪个解析器,您都发现了一个bug。在
我不知道你在用哪个解析器,但我知道:
python2.7.2(来自Apple)、bs4.1.3(来自pip)、libxml2.9.0(来自自制程序)、lxml3.1.0(来自pip)的错误与您完全相同。除了libxml2.7.8(来自苹果)之外,我尝试的其他所有内容都与上面相同。并且
lxml
是默认值(至少在4.1.3中是这样),如果您不指定任何其他内容,BS将首先尝试。我在libxml2.9.0中看到了其他意外的错误(其中大部分已经在trunk上修复,但是还没有2.9.1发布)。在所以,若这是您的问题,您可能需要降级到2.8.0和/或从树的顶部构建它。在
但如果不是这样的话……它绝对适用于我的2.7.2和stdlib
html.parser
,在chat中,你用2.7.1测试了同样的想法。虽然html.parser
(尤其是在2.7.3之前)是缓慢而脆弱的,但它似乎对您来说已经足够好了。因此,最简单的解决方案是:…而不是让它选择自己喜欢的解析器。在
有关详细信息,请参见Specifying the parser to use(以及上面和下面的部分)。在
我也遇到了同样的问题,在本地,漂亮的汤在我的ubuntu服务器上总是返回一个空列表。 我已经尝试过很多解析器来跟踪链接[1],并尝试了很多依赖关系
最后,对我有用的是:
命令:
我使用了以下代码:
^{pr2}$[http://www.crummy.com/software/BeautifulSoup/bs4/doc/#installing-a-parser][1]
相关问题 更多 >
编程相关推荐