-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmeitulu.cpp
More file actions
70 lines (64 loc) · 1.92 KB
/
meitulu.cpp
File metadata and controls
70 lines (64 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include "meitulu.h"
#include "daye.h"
#include<QtDebug>
meitulu::meitulu(QObject *parent) : QObject(parent)
{
d=new downloader();
connect(d,SIGNAL(finished()),this,SLOT(htmlDownloaded()));
connect(d,SIGNAL(downloadError(QString)),this,SLOT(htmlFailed(QString)));
connect(d,SIGNAL(redirected(QString)),this,SLOT(htmlFailed(QString)));
}
void meitulu::doJob(QString inUrl)
{
picLinkList.clear();
mid=inUrl.split("/").last();
mid=mid.split(".").first();
url=inUrl;
d->init(inUrl,"meitulu.tmp");
d->setReferer("www.meitulu.com");
d->doGet();
}
void meitulu::htmlDownloaded()
{
QString line;
QFile file("meitulu.tmp");
char tmp[200];
if(file.open(QIODevice::ReadOnly))
{
while(!file.atEnd())
{
line=file.readLine();
if(line.contains("</span><h1>"))
{
getStringBetweenAandB(line.toStdString().c_str(),"</span><h1>","</h1>",tmp);
title=QString(tmp);
qDebug()<<title;
break;
}
}
while(!file.atEnd())
{
line=file.readLine();
if(line.contains("图片数量"))
{
getStringBetweenAandB(line.toStdString().c_str(),"图片数量: "," 张",tmp);
stringPicNum=QString(tmp);
qDebug()<<stringPicNum;
iPicNum=stringPicNum.toInt();
break;
}
}
for(int i=1;i<=iPicNum;i++)
{
picLinkList.append(QString("https://mtl.ttsqgs.com/images/img/")+mid+QString("/")+QString::number(i)+QString(".jpg"));
}
emit finished(true,title,picLinkList,url);
}
else{
emit finished(false,title,picLinkList,url);
}
}
void meitulu::htmlFailed(QString inErrorString)
{
emit finished(false,title,picLinkList,url);
}