git-svn-id: svn://192.168.0.12/source@346 8346c931-da38-4b9b-9d4c-e48b93cbd075

This commit is contained in:
admin
2017-04-14 02:30:18 +00:00
parent 4fa93a7cc4
commit fab5f51c85
12 changed files with 91 additions and 29 deletions

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.2.0, 2017-03-16T03:16:35. -->
<!-- Written by QtCreator 4.2.0, 2017-04-12T18:09:18. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
@@ -8,7 +8,7 @@
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">1</value>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.2.0, 2017-03-16T03:16:35. -->
<!-- Written by QtCreator 4.2.0, 2017-04-13T14:15:14. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
@@ -1026,8 +1026,8 @@
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">EffectProcess</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/source/EffectProcess2/EffectProcess.pro</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">EffectProcess2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/source/EffectProcess/EffectProcess.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">EffectProcess.pro</value>

View File

@@ -50,6 +50,16 @@ const QString SNaverBlog::scriptArticleData =
"}"
"findArticledata();";
const QString SNaverBlog::scriptLikeCount =
"function findSympathy() { "
"var tt = frames['mainFrame'].document.querySelector('em.u_cnt._cnt'); "
"if (tt)"
" return tt.textContent;"
"else"
" return \"-1\"; "
"}"
"findSympathy();";
const QString SNaverBlog::scriptReplyUrl =
"function findSympathy() { "
"var tt = frames['mainFrame'].document.querySelector('em.u_cnt._cnt'); "
@@ -430,7 +440,8 @@ void SNaverBlog::slotLoadFinished(bool ok)
m_pWebPage->runJavaScript(scriptArticleNickname, std::bind(&SNaverBlog::cbBodyArticleNickname, this, _1));
m_pWebPage->runJavaScript(scriptArticleOrder, std::bind(&SNaverBlog::cbBodyArticleOrder,this, _1));
m_pWebPage->runJavaScript(scriptArticleTitle, std::bind(&SNaverBlog::cbBodyArticleTitle,this, _1));
m_pWebPage->runJavaScript(scriptReplyUrl, std::bind(&SNaverBlog::cbBodyReplyUrl,this, _1));
//m_pWebPage->runJavaScript(scriptReplyUrl, std::bind(&SNaverBlog::cbBodyReplyUrl,this, _1));
m_pWebPage->runJavaScript(scriptLikeCount, std::bind(&SNaverBlog::cbBodyReplyUrl,this, _1));
return;
}
@@ -676,6 +687,26 @@ void SNaverBlog::cbBodyReplyUrl(const QVariant& _result)
goReplyUrl();
}
void SNaverBlog::cbBodyLikeCount(const QVariant& _result)
{
//qDebug() << "replyurl";
bool ok;
static int Retry = 2;
QString strData = _result.toString().trimmed().replace(",", "");
if ((strData == "-1" || strData.isEmpty()) && Retry-- > 0)
{
QTimer::singleShot(TIME, this, [this](){
this->m_pWebPage->runJavaScript(scriptLikeCount, std::bind(&SNaverBlog::cbBodyLikeCount, this, _1));
});
return;
}
m_efData.body.data[LIKE_COUNT] = strData;
ok = doneBodyCrawler(E_FUNC_REPLY_URL);
//qDebug() << "done replyurl";
if (ok)
goReplyUrl();
}
bool SNaverBlog::doneBodyCrawler(E_FUNC _func_type)
{
bool ok = true;

View File

@@ -72,6 +72,7 @@ private:
void cbBodyArticleNickname(const QVariant& result);
void cbBodyArticleOrder(const QVariant& result);
void cbBodyReplyUrl(const QVariant& _result);
void cbBodyLikeCount(const QVariant& _result);
bool doneBodyCrawler(E_FUNC _func_type);
@@ -79,6 +80,7 @@ private:
static const QString scriptArticleTitle;
static const QString scriptArticleData;
static const QString scriptReplyUrl;
static const QString scriptLikeCount;
static const QString scriptArticleNickname;
static const QString scriptArticleOrder;
bool m_abOk[E_FUNC_MAX];

View File

@@ -7,6 +7,7 @@
#include <QString>
#include <QVariant>
#include <QDebug>
#include <iostream>
namespace
{
const QString SEPERATOR = "!@#";
@@ -92,7 +93,6 @@ bool SResultSender::send(const State_s1_effect& _result)
"likecount = :likecount, interactioncount = :interactioncount,"
"engagementcount = :engagementcount, lastupdate_filter = :lastupdate_filter, status = 'OK'";
QSqlQuery query(db);
query.prepare(strQuery);
query.bindValue(":event_num", _result.event_num);
query.bindValue(":replybuzz", _result.replybuzz);

View File

@@ -181,6 +181,7 @@ enum E_COLUMN
PLATFORM_ID,
KEYWORD_ID,
REPLY_URL,
LIKE_COUNT,
ETC,
TOTAL_COUNT,
};

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.2.0, 2017-03-16T03:16:35. -->
<!-- Written by QtCreator 4.2.0, 2017-04-13T14:15:14. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
@@ -779,7 +779,7 @@
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">EffectUI</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">EffectUI2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/source/EffectUI2/EffectUI.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>

View File

@@ -153,10 +153,15 @@ void SCompanyListWidget::refresh()
}
//select num, name, startdate, enddate from company join company_event_map where company.num = company_event_map.company_num
QString strQuery("select company.num, name, startdate, enddate, "
"count(company_event_map.company_num) as "
"cnt from company inner join company_event_map "
"on company.num = company_event_map.company_num group by company.num");
QString strQuery("select company.num, name, eventgroup.startdate, eventgroup.enddate, "
"count(company_event_map.company_num) as cnt "
"from company "
"inner join company_event_map "
"on company.num = company_event_map.company_num "
"inner join eventgroup "
"on eventgroup.company_num = company.num "
"group by company.num;"
);
QSqlQuery query(db);
if (!query.exec(strQuery))
{

View File

@@ -7,6 +7,7 @@
#include <QDate>
#include <QStringList>
#include <QDebug>
#include <iostream>
namespace
{
@@ -100,11 +101,14 @@ void SCompanyProcess::runInit()
}
*/
strQuery = "select company.num, name, startdate, enddate, t.eventgroupnum, "
"t.date, t.url, t.num, t.platformname_num from company "
strQuery = "select company.num, name, eventgroup.startdate, eventgroup.enddate, t.eventgroupnum, "
"t.date, t.url, t.num, t.platformname_num "
"from company "
"join (select company_num, company_event_map.eventgroup_num as eventgroupnum, event.date, event.url, event.num, "
"event.platformname_num from company_event_map join event on company_event_map.event_num = event.num) "
"as t on company.num = t.company_num where company.num in (";
"as t on company.num = t.company_num "
"inner join eventgroup on eventgroup.company_num = company.num "
"where company.num in (";
foreach (auto &num, m_vecRunOrderList)
{

View File

@@ -137,6 +137,7 @@ QStringList SParentProcess::getProcessArguments(const SEffectRow& _row) const
}
slargv << _row.eventcode << _row.url << _row.company_startdate.toString("yyyy-MM-dd");
return slargv;
}
@@ -154,7 +155,7 @@ void SParentProcess::runProcess(QStringList _arguments)
}
else
{
emit signalLog("x " + m_erCurrentRow.eventcode + " " + m_erCurrentRow.url + "\n[99:99:99] ERROR:NO_PROGRAM");
emit signalLog("x : " + m_erCurrentRow.eventcode + " : " + m_erCurrentRow.url + "\n[99:99:99] ERROR:NO_PROGRAM");
emit signalTerminateEachEvent(m_erCurrentRow.company_num, E_CRAWL_STATE::FAIL);
m_vecError.append(m_erCurrentRow);
setInnerMode(E_INNER_RUN_MODE::MODE_RUN_EVENTCODE);

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.2.0, 2017-03-28T12:20:26. -->
<!-- Written by QtCreator 4.2.0, 2017-04-12T18:09:18. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
@@ -1273,8 +1273,8 @@
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">FilterProcess</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">FilterProcess2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/source/FilterProcess3/FilterProcess.pro</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/source/FilterProcess/FilterProcess.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">FilterProcess.pro</value>

View File

@@ -1216,21 +1216,39 @@ bool SPowercafe::SStatsJson::uploadData(QSqlDatabase &_db, const int &_nCompany)
foreach (const stStatsJson& ststats, m_listMap)
{
QString strQuery = "insert into stats_json (company_num, servicenum, title, subtitle, category_num, platformname_num, jdata) values (";
strQuery += QString::number(_nCompany) + ",";
strQuery += QString::number(ststats.servicenum) + ",";
strQuery += "'" + ststats.title + "',";
strQuery += "'" + ststats.subtitle + "',";
strQuery += QString::number(ststats.category_num) + ",";
strQuery += QString::number(ststats.platformname_num) + ",";
strQuery += "'" + ststats.jdata +"')";
// QString strQuery = "insert into stats_json (company_num, servicenum, title, subtitle, category_num, platformname_num, jdata) values (";
// strQuery += QString::number(_nCompany) + ",";
// strQuery += QString::number(ststats.servicenum) + ",";
// strQuery += "'" + ststats.title + "',";
// strQuery += "'" + ststats.subtitle + "',";
// strQuery += QString::number(ststats.category_num) + ",";
// strQuery += QString::number(ststats.platformname_num) + ",";
// strQuery += "'" + ststats.jdata +"')";
if (!query.exec(strQuery.toUtf8()))
// if (!query.exec(strQuery.toUtf8()))
// {
// m_pSInitializer->insertLog(query.lastQuery());
// m_pSInitializer->insertLog(query.lastError().text());
// return false;
// }
query.prepare("insert into stats_json (company_num, servicenum, title, subtitle, category_num, platformname_num, jdata) values "
"(:company_num, :servicenum, :title, :subtitle, :category_num, :platformname_num, :jdata)");
query.bindValue(":company_num", _nCompany);
query.bindValue(":servicenum", ststats.servicenum);
query.bindValue(":title", ststats.title);
query.bindValue(":subtitle", ststats.subtitle);
query.bindValue(":category_num", ststats.category_num);
query.bindValue(":platformname_num", ststats.platformname_num);
query.bindValue(":jdata", ststats.jdata);
if (!query.exec())
{
m_pSInitializer->insertLog(query.lastQuery());
m_pSInitializer->insertLog(query.lastError().text());
return false;
}
}
return true;
}