Python 使用BeautifulSoup从URL获取图像
我试图从维基百科页面获取重要的图像,而不是缩略图或其他GIF,并使用以下代码。然而,“img”的长度为“0”。任何关于如何纠正的建议 代码:Python 使用BeautifulSoup从URL获取图像,python,url,web-scraping,beautifulsoup,urllib,Python,Url,Web Scraping,Beautifulsoup,Urllib,我试图从维基百科页面获取重要的图像,而不是缩略图或其他GIF,并使用以下代码。然而,“img”的长度为“0”。任何关于如何纠正的建议 代码: import urllib import urllib2 from bs4 import BeautifulSoup import os html = urllib2.urlopen("http://en.wikipedia.org/wiki/Main_Page") soup = BeautifulSoup(html) imgs = soup.fin
import urllib
import urllib2
from bs4 import BeautifulSoup
import os
html = urllib2.urlopen("http://en.wikipedia.org/wiki/Main_Page")
soup = BeautifulSoup(html)
imgs = soup.findAll("div",{"class":"image"})
另外,如果有人可以通过查看网页中的“源元素”详细解释如何使用findAll。那太棒了。页面上的
a
标签有一个image
类,而不是div
:
>>> img_links = soup.findAll("a", {"class":"image"})
>>> for img_link in img_links:
... print img_link.img['src']
...
//upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Stora_Kronan.jpeg/100px-Stora_Kronan.jpeg
//upload.wikimedia.org/wikipedia/commons/thumb/4/4b/Christuss%C3%A4ule_8.jpg/77px-Christuss%C3%A4ule_8.jpg
...
或者,最好使用a.image>img
:
UPD(使用下载图像):
页面上的
a
标记具有image
类,而不是div
:
>>> img_links = soup.findAll("a", {"class":"image"})
>>> for img_link in img_links:
... print img_link.img['src']
...
//upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Stora_Kronan.jpeg/100px-Stora_Kronan.jpeg
//upload.wikimedia.org/wikipedia/commons/thumb/4/4b/Christuss%C3%A4ule_8.jpg/77px-Christuss%C3%A4ule_8.jpg
...
或者,最好使用a.image>img
:
UPD(使用下载图像):
我在那个页面上没有看到任何名为“image”的类的div标记 你可以得到所有的图像标签,然后扔掉那些小的
imgs = soup.select('img')
我在那个页面上没有看到任何名为“image”的类的div标记 你可以得到所有的图像标签,然后扔掉那些小的
imgs = soup.select('img')
@LonelySoul-sure,检查
UPD
部分。@LonelySoul-sure,检查UPD
部分。