2017-07-26 39 views
0

是的,我知道我应该在键入代码,但因此格式化我刚才复制的相关代码的图片页面源代码我无法找到它:Trying to select overlay (Click this pick)在flickr上使用CSS选择器和beautifulsoup很难,我做错了什么?

所以我试图做的是目标覆盖div ,并复制链接。我正在使用pythons请求和bs4(beautifulSoup)模块。

# Get the web page 
res = requests.get('https://www.flickr.com/search/?=&text=new+york') 
soup = bs4.BeautifulSoup(res.text) 
soupElement = soup.select('div.overlay') 

然而,soupElement返回空。我在这里做错了什么? div是不可选的还是。

+1

如果你检查,你会看到数据会以JavaScript使用YUI加载页面。即使您的选择不正确,如下面的答案中所述,这并不重要,因为您正在查找的内容不存在于返回的数据中,因为它尚未加载到页面上。 – martinB0103

+0

@ martinB0103哦好吧谢谢。什么是正确的选择声明? –

+0

它应该如下面的答案所示,但这并不重要,因为您尝试选择的内容在页面上不存在。你需要使用像Selenium这样的东西来运行JavaScript并将数据加载到页面 – martinB0103

回答

2

那么根据您的图片,overlay<a>标记,以便'div.overlay'应该'a.overlay'

+0

噢对不起,我写得太快了,但是我试过了,那也不管用。我认为@ MartinB103是对的 –