我正在抓取http://apod.nasa.gov/当天的形象。到目前为止,我已经能够返回我认为是图像源标签的内容。
#!/usr/bin/env python
from urllib2 import urlopen
from BeautifulSoup import BeautifulSoup
class Apod:
def apod_wallpaper(self):
self.soup = BeautifulSoup(urlopen('http://apod.nasa.gov/').read())
self.pic = self.soup.find('img')
return self.pic
print Apod().apod_wallpaper()
>>> ./apod.py
>>> <img src="image/1208/Ma2011-2Tezel900.jpg" name="imagename1" alt="See Explanation.
Moving the cursor over the image will bring up an annotated version.
Clicking on the image will bring up the highest resolution version
available." />
我不确定如何从这里下载实际的 .jpg ?
答案 0 :(得分:4)
第1步:阅读HTML文件。
第2步:从找到的图像中提取src
属性。将域http://apod.nasa.gov/
与src
值image/1208/Ma2011-2Tezel900.jpg
连接起来,以提供用于获取图像的URL。
步骤3:在其上运行urlopen(...).read()
,并将其写入文件
例如:
data = urlopen('http://apod.nasa.gov/image/1208/Ma2011-2Tezel900.jpg').read()
open('mypic.jpg', 'wb').write(data)
答案 1 :(得分:3)
>>> urlparse.urljoin('http://apod.nasa.gov/', 'image/1208/Ma2011-2Tezel900.jpg')
'http://apod.nasa.gov/image/1208/Ma2011-2Tezel900.jpg'