Массовая загрузка изображений
Существует ли программа / приложение для Ubuntu, которое позволяет загружать несколько изображений со страницы? Если быть точным, я хочу получить несколько фотографий с сайта
http://www.cookingforengineers.com/
Некоторые из рецептов представляют собой бесконечный список фотографий, и я хочу собрать их все вместе.
Я пробовал DownThemAll с Firefox, но 1. Я мог получить только миниатюры и 2. Теперь я использую Chrome.
1 ответ
Несмотря на то, что вы не знакомы с кодированием, это все равно должно делать то, что вы хотите. Конечно, вы можете ждать, пока другой пользователь опубликует решение с графическим интерфейсом.
Просто скопируйте и вставьте следующий код в текстовый документ и сохраните его как dlimgs.py
, Я рекомендую сделать новую папку в вашем домашнем каталоге с именем bin
и сохранить его там.
#!/ust/bin/env python
import sys,urllib2,re
def main(url):
page = getpage(url)
start = page.find('articlebody')
page = page[start:]
lines = page.split('\n')
for l in lines:
if ('<img' in l) and ('.jpg' in l):
matches = re.search(".*<img.*'(.*\.jpg)'.*",l)
img = matches.group(1)
name = img[img.rfind('/')+1:]
print 'Downloading: '+name
img = getpage(img)
with open(name,'w') as f:
f.write(img)
def getpage(url):
user_agent = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0'
headers = {'User-Agent':user_agent}
req = urllib2.Request(url, None, headers);
response = urllib2.urlopen(req)
return response.read()
if __name__ == '__main__':
main(sys.argv[1])
Затем откройте терминал с помощью Ctrl+Alt+T и выполните следующие действия:
- Переместитесь туда, где вы его сохранили, используя
cd
команда (Пример:cd ~/bin
) - Вызвать скрипт с
python dlimgs.py <url>
Он загрузит все изображения и сохранит их в ~/bin
папка. Обратите внимание, что это было написано специально для веб-сайта, который вы указали в вопросе, и поэтому пропустите изображения заголовков вверху страницы. Это, вероятно, приведет к ошибкам для других сайтов. Еще одно примечание, оно перезапишет любые изображения с теми же именами файлов в ~/bin
Дир, так что будь осторожен.