有人有一个吗? IVE尝试了Comicownloader,但这只能让我下载最新的漫画,我对Python的理解不足以弄清楚如何更改它以下载所有漫画

有帮助吗?

解决方案

好吧,这不是python,方法也不是很优雅,但它会起作用。

经过简要检查 Ctrl+Alt+Del档案网站 我发现所有漫画都存储在 /漫画 /作为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很受欢迎,可以简单地吸收您下载整个档案的增加负载,但是较小的网站可能不欣赏它 - 尽管我认为他们真的可以阻止您或其他任何东西。

至于您的问题,本网站应该帮助您解决编程问题,帮助您解决您的问题,一路上推动您 - 但如果您要求他们只是为您编写代码,那么大多数人就不会欣赏它。学习一些python,自己尝试,如果遇到任何问题,请问。

我将Urllib与修改后的用户代理(因为Timmy阻止了原始)和BeautifulSoup。无论如何,Heres日期生成器:

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'
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top