Нужна помощь со скребком Python - PullRequest
0 голосов
/ 22 июля 2011

Я пытаюсь использовать urllib с python, чтобы сделать скребок, я могу загрузить изображения, но они представляют собой миниатюру, 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 голосов
/ 23 июля 2011

Поскольку вы можете щелкнуть, чтобы увидеть более крупную ссылку, URL-адрес в <a href="url">, который находится вокруг тега изображения, указывает на полное изображение.

Так что просто прочитайте значение свойства href и загрузите его вместо свойства src изображения.

...