需要帮助构建Python爬虫
我正在用Python的urllib库做一个网页抓取工具,我可以下载图片,但下载的都是缩略图,大小只有250x250或者更小。(我在尝试抓取4chan,因为我喜欢一些图片帖子)
我该怎么才能获取到完整的图片呢?这是我的代码:
import urllib2, urllib
from BeautifulSoup import BeautifulSoup
import re
import urlparse
i = 0
ext = "'src' : re.compile(r'(jpe?g)|(png)|$'"
url = raw_input("Enter URL here:")
ender = raw_input("Enter File Type Here(For Images enter 'img'):")
if ender == "img":
ender = 'img', {'src' : re.compile(r'(.jpe?g)|(.png)|(.gif)$')}
else:
if "." in ender:
end = ender
else:
end = ".%s" % ender
raw = urllib.urlopen(url)
soup = BeautifulSoup(raw)
parse = list(urlparse.urlparse(url))
for ender in soup.findAll(ender):
links = "%(src)s"% ender
print links
str(links)
if ".jpg" in links:
end = ".jpg"
if ".jpeg" in links:
end = ".jpeg"
if ".gif" in links:
end = ".gif"
if ".png" in links:
end = ".png"
i += 1
urllib.urlretrieve(links, "%s%s" % (i, end))
1 个回答
2
因为你可以点击查看更大的链接,所以在图片标签周围的 <a href="url">
里的网址指向的是完整的图片。
所以只需要读取 href
属性的值,然后下载这个链接,而不是下载图片的 src
属性。