Скрипт Python для загрузки всех веб -комиксов CTRL+Alt+Del? [закрыто
-
19-09-2019 - |
Вопрос
У кого -нибудь есть? Я попробовал ComicDownloader, но это позволяет мне скачать новейший комикс, и я недостаточно хорошо понимаю Python, чтобы выяснить, как его изменить, чтобы загрузить все комиксы
Решение
Ну, это не Python, и метод тоже не очень элегантен, но он будет работать.
После краткого осмотра Ctrl+Alt+Del Archive сайт Я обнаружил, что все комиксы хранятся в / comics / как файлы JPG.
С этим предположением запустить следующую команду в оболочке на машине *NIX загрузит все комиксы. Имена файлов, очевидно, даты в формате yyyymmdd.
$ for filename in $(seq 20020101 20090726); do wget http://www.ctrlaltdel-online.com/comics/"$filename".jpg; done
О, и это может занять некоторое время :).
Другие советы
Ну, есть несколько подходов. Вы можете посмотреть на URL -адреса самих комических изображений, чтобы увидеть, следуют ли они с шаблоном, написать небольшой сценарий для генерации URL -адресов, которые соответствуют шаблону, и просто использовать WGET или что -то похожее на их загрузку. Чтобы узнать необходимый Python, я рекомендую Учебник Python. Анкет Посмотрите конкретно на способы сочетания строк, форматирования строк, строковых операций, чтобы вы могли создавать свои URL -адреса из строк компонентов, чисел и т. Д. Этот вид проекта может быть хорошим оправданием для изучения Python, который, вероятно, поможет вам с другими вещами в будущем. (И это весело!)
В качестве альтернативы, я полагаю, что люди делали это раньше - почти наверняка есть приложения, которые делают то, что вы хотите, учитывая URL -адреса изображений, или просто шаблон URL. Осмотреться.
Вы можете написать автору комикса и спросить, как -то доступны ли они оптом, возможно, для покупки, возможно, в качестве книги. Я полагаю, что Ctrl-Alt-Del достаточно популярен, чтобы просто поглотить дополнительную нагрузку, когда вы загружаете весь архив, но небольшие сайты могут не оценить его-хотя я не думаю, что они действительно могут остановить вас или что-то еще.
Что касается вашего вопроса, этот сайт должен помочь вам с вашими вопросами по программированию, помогите вам с проблемами, которые у вас есть, подталкивать вас по пути, но в основном люди не ценят это, если вы попросите их просто написать ваш код для вас. Узнайте немного питона, попробуйте сами, если вы столкнетесь с любыми проблемами, спросите тогда.
Я использую Urllib с модифицированным пользовательским агентом (так как Тимми заблокировал оригинал) и BeautifulSoup. В любом случае, вот генератор даты:
t1 = datetime.date(2002, 10, 22)
t2 = datetime.date.today()
while t2 > t1:
t1 = t1 + datetime.date.resolution
toon = t1.strftime("%Y%m%d")
url1 = str(toon)
main(url1)
И мой main (): Похоже, это (ушел, если бы файл существует »)
def main(url):
con = httplib.HTTPConnection("www.cad-comic.com")
con.request("GET", "/cad/" + url)
r1 = con.getresponse()
soup = BeautifulSoup(r1)
img = soup.findAll("img")[1]
nImg = str(img)
imgSplit = re.split('"', nImg)
imgUrl = imgSplit[1]
if imgUrl.startswith('http://www.cad-comic.com/comics/'):
MeOpans().retrieve(imgUrl, url + ".jpg")
print "Downloaded " + url
"Meopans ()" выглядит так:
class MeOpans(urllib.URLopener):
version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11'