示例#1
0
文件: views.py 项目: kingwblack/comic
def getComicInfo(request):
    infourl=request.GET.get('infourl',None)
    comicid=request.GET.get('comicid',None)
    spider = spiderfactory.getSpider(infourl)
    chapters=spider.getChapters(infourl)
    comic=Comic.comicManager.get_queryset().filter(pk=int(comicid)).get()
    return render(request,'comic/comicInfo.html',{'chapters':chapters,'comic':comic,})
示例#2
0
文件: views.py 项目: kingwblack/comic
def preChapter(request):
    infoUrl = request.GET.get('infoUrl', None)
    chapterUrl = request.GET.get('chapterUrl', None)
    comicname = request.GET.get('comicname', None)
    comicid = request.GET.get('comicid', None)
    spider= spiderfactory.getSpider(infoUrl)
    chapters=spider.getChapters(infoUrl)
    # print chapters
    preUrl=chapters[0].get('chapterUrl')
    title = chapters[0].get('title')
    for i in range(1,len(chapters)):
        if chapterUrl==chapters[i].get('chapterUrl'):
            preUrl = chapters[i - 1].get('chapterUrl')
            title = chapters[i - 1].get('title')
            break

    content = spider.getImgRealPath(preUrl)
    context = {"content": content,
               'len': len(content),
               'chaptername': title,
               'comicname': comicname,
               'infoUrl': infoUrl,
               'chapterUrl': preUrl,
               'comicid': comicid,
               }
    return render(request, 'comic/chapterContent.html', context)
示例#3
0
文件: views.py 项目: kingwblack/comic
def index(request):
    spider= spiderfactory.getSpider('https://163.bilibili.com')
    recommends=spider.getRecommend()
    comicManager=Comic.comicManager
    for recommend in recommends:
        print recommend['url']
        # recommend['comicid']=comicManager.get(Q(comic_url=recommend['url'])).id
        comiclist=comicManager.filter(Q(comic_url=recommend['url']))
        if(len(comiclist)==0):
            recommend['comicid']=0
        else:
            recommend['comicid'] = comiclist[0].id
    type1=comicManager.getType1()[0:3]
    type2=comicManager.getType2()[0:3]
    type3=comicManager.getType3()[0:3]
    type4=comicManager.getType4()[0:3]
    type5=comicManager.getType5()[0:3]
    type6=comicManager.getType6()[0:3]
    type7=comicManager.getType7()[0:3]
    type8=comicManager.getType8()[0:3]
    k1 = (u'热血,战斗,武侠', type1)
    k2 = (u'恋爱,后宫', type2)
    k3 = (u'恐怖,悬疑', type3)
    k4 = (u'治愈,儿童,唯美', type4)
    k5 = (u'搞笑,萌系', type5)
    k6 = (u'古风,穿越,冒险', type6)
    k7 = (u'校园,都市', type7)
    k8 = (u'魔幻,科幻,玄幻', type8)
    context={'comiclist':[k1,k2,k3,k4,k5,k6,k7,k8],
             'recommends':recommends,
             }
    return render(request,'comic/index.html',context)
示例#4
0
文件: views.py 项目: kingwblack/comic
def getContent(request):
    chapterUrl=request.GET.get('chapterUrl',None)
    comicname=request.GET.get('comicname',None)
    chaptername=request.GET.get('chaptername',None)
    comicid=request.GET.get('comicid',None)
    spider= spiderfactory.getSpider(chapterUrl)
    content=spider.getImgRealPath(chapterUrl)
    comicManager = Comic.comicManager
    comic = comicManager.get(Q(id=int(comicid)))
    infoUrl=comic.comic_url

    context={"content":content,
             'len':len(content),
             'chaptername':chaptername,
             'comicname':comicname,
             'infoUrl':infoUrl,
             'chapterUrl':chapterUrl,
             'comicid':comicid,
             }
    return render(request, 'comic/chapterContent.html',context )
示例#5
0
#coding=utf-8
from comicspider import spiderfactory

spider = spiderfactory.getSpider('https://manhua.163.com')


# 测试获取图片的真实路径列表
def testGetImgRealPath():
    print spider.getImgRealPath(
        'https://manhua.163.com/reader/4317076104890059052/4320895779440077948'
    )


testGetImgRealPath()
示例#6
0
文件: __init__.py 项目: zwd1990/comic
#coding=utf-8
from comicspider import spiderfactory
import re
import json
shenmanhua=spiderfactory.getSpider('https://www.shenmanhua.com/shenyidinv/')

# html=shenmanhua.getSourceCode('https://ac.qq.com/ComicView/index/id/636058/cid/6')
html=shenmanhua.getSourceCode('https://ac.gtimg.com/media/js/ac.page.chapter.view_v2.4.0.js?v=20170622')
with open('ac.page.chapter.view_v2.4.0.js','w') as f:
    f.write(html)
示例#7
0
#coding=utf-8
from comicspider import spiderfactory

spider = spiderfactory.getSpider('https://163.bilibili.com')


# 测试获取图片的真实路径列表
def testGetImgRealPath():
    print spider.getImgRealPath(
        'https://163.bilibili.com/reader/4317076104890059052/4320895779440077948'
    )


# 测试获取漫画的章节列表
def testGetChapters():
    print spider.getChapters(
        'https://163.bilibili.com/source/4317076104890059052')


# 测试获取第一章图片的真实路径列表
def testFirstChapterImg():
    firstChapter = spider.getChapters(
        'https://163.bilibili.com/source/4317076104890059052')[0]
    print firstChapter['chapterUrl'], firstChapter['title']
    print spider.getImgRealPath(firstChapter['chapterUrl'])


# testGetImgRealPath()
# testGetChapters()
testFirstChapterImg()
示例#8
0
#coding=utf-8
from comicspider import spiderfactory
import execjs
import re
import json

spider = spiderfactory.getSpider(
    'https://ac.qq.com/ComicView/index/id/636058/cid/6')


# 测试破解加密算法
def testDecodeImgpath():
    html = spider.getSourceCode(
        'https://ac.qq.com/ComicView/index/id/629632/cid/45')
    data = re.findall(r"var DATA\s*= '(.*)'", html)[0]
    nonce = re.findall(r'window\[".*=(.*);', html)[0]
    nonce = execjs.eval(nonce)
    print spider.decodeImgpath(data, nonce)


# 测试获取图片的真实路径列表
def testGetImgRealPath():
    # print spider.getImgRealPath('https://ac.qq.com/ComicView/index/id/628543/cid/1')
    print spider.getImgRealPath(
        'https://ac.qq.com/ComicView/index/id/635032/cid/14')


# 测试获取漫画的章节列表
def testGetChapters():
    chapters = spider.getChapters(
        'https://ac.qq.com/Comic/comicInfo/id/627718')