OSSEZ-20 设置 Twitter 的状态为每 5 分钟 2 条 Twitter 的速度进行补发
This commit is contained in:
parent
8a8ef3d883
commit
0b53da6fe1
@ -54,12 +54,16 @@ import twitter4j.conf.ConfigurationBuilder;
|
||||
public class VisaImporter extends DataCrawl {
|
||||
private static final Logger logger = LoggerFactory.getLogger(VisaImporter.class);
|
||||
private static final String CONF_LAST_RUNTIME = VisaImporter.class.getName() + "-lastRuntime";
|
||||
private static final String CONF_TWITTER_COUNT = VisaImporter.class.getName() + "-twitterCount";
|
||||
|
||||
private static final String TWITTER = "Twitter";
|
||||
public static final String URL_CHECKEE = "https://www.checkee.info/main.php?dispdate=";
|
||||
private static final String URL_CHECKEE = "https://www.checkee.info/main.php?dispdate=";
|
||||
|
||||
public static HashMap<String, VisaClass> visaClassMap = new HashMap<String, VisaClass>();
|
||||
public static DateTime lastRuntime = new DateTime();
|
||||
private static HashMap<String, VisaClass> visaClassMap = new HashMap<String, VisaClass>();
|
||||
private static DateTime lastRuntime = new DateTime();
|
||||
private static Integer twitterCount = 0;
|
||||
|
||||
private static boolean webCrawl = false;
|
||||
|
||||
/**
|
||||
* Command process function
|
||||
@ -97,13 +101,15 @@ public class VisaImporter extends DataCrawl {
|
||||
crawlWebVisa(URL_CHECKEE + DateTimeFormat.forPattern("yyyy-MM").print(new DateTime()));
|
||||
crawlWebVisa(URL_CHECKEE + DateTimeFormat.forPattern("yyyy-MM").print(new DateTime().minusMonths(1)));
|
||||
|
||||
processCleanup();
|
||||
webCrawl = true;
|
||||
} else {
|
||||
logger.debug("NOT RUN");
|
||||
}
|
||||
|
||||
// SOCIAL MEDIA
|
||||
SocialMedia();
|
||||
|
||||
processCleanup();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -124,6 +130,18 @@ public class VisaImporter extends DataCrawl {
|
||||
}
|
||||
logger.debug("Last Runtime - [{}]", lastRuntime);
|
||||
|
||||
// TWITTER COUNT
|
||||
ConfApp confAppTwitterCount = ConfFactory.get(CONF_TWITTER_COUNT);
|
||||
if (confAppTwitterCount != null) {
|
||||
twitterCount = NumberUtils.createInteger(confAppTwitterCount.getValue());
|
||||
} else {
|
||||
confAppTwitterCount = new ConfApp();
|
||||
confAppTwitterCount.setName(CONF_TWITTER_COUNT);
|
||||
confAppTwitterCount.setValue("999");
|
||||
ConfFactory.save(confAppTwitterCount);
|
||||
}
|
||||
logger.debug("Last Runtime - [{}]", lastRuntime);
|
||||
|
||||
// VISA CLASS MAP
|
||||
List<VisaClass> visaClassList = VisaFactory.getAllVisaClass();
|
||||
for (VisaClass visaClass : visaClassList) {
|
||||
@ -140,13 +158,18 @@ public class VisaImporter extends DataCrawl {
|
||||
logger.error("Init Data from Database");
|
||||
|
||||
ConfApp confAppLastRuntime = ConfFactory.get(CONF_LAST_RUNTIME);
|
||||
if (confAppLastRuntime == null) {
|
||||
confAppLastRuntime = new ConfApp();
|
||||
confAppLastRuntime.setName(CONF_LAST_RUNTIME);
|
||||
|
||||
if (webCrawl && confAppLastRuntime != null) {
|
||||
confAppLastRuntime.setValue(new DateTime().toString());
|
||||
ConfFactory.save(confAppLastRuntime);
|
||||
}
|
||||
|
||||
confAppLastRuntime = ConfFactory.get(CONF_TWITTER_COUNT);
|
||||
if (confAppLastRuntime != null) {
|
||||
confAppLastRuntime.setValue(String.valueOf(twitterCount + 3));
|
||||
ConfFactory.save(confAppLastRuntime);
|
||||
}
|
||||
|
||||
confAppLastRuntime.setValue(new DateTime().toString());
|
||||
ConfFactory.save(confAppLastRuntime);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -184,30 +207,30 @@ public class VisaImporter extends DataCrawl {
|
||||
String visaClassName = StringUtils.trimToEmpty(tds.get(2).text());
|
||||
if (StringUtils.isNotBlank(visaClassName)) {
|
||||
switch (visaClassName) {
|
||||
case "B1":
|
||||
visaClassName = "B-1";
|
||||
break;
|
||||
case "B2":
|
||||
visaClassName = "B-2";
|
||||
break;
|
||||
case "H1":
|
||||
visaClassName = "H1-B";
|
||||
break;
|
||||
case "H4":
|
||||
visaClassName = "H-4";
|
||||
break;
|
||||
case "F1":
|
||||
visaClassName = "F-1";
|
||||
break;
|
||||
case "F2":
|
||||
visaClassName = "F-2";
|
||||
break;
|
||||
case "J1":
|
||||
visaClassName = "J-1";
|
||||
break;
|
||||
case "L1":
|
||||
visaClassName = "L-1";
|
||||
break;
|
||||
case "B1" :
|
||||
visaClassName = "B-1";
|
||||
break;
|
||||
case "B2" :
|
||||
visaClassName = "B-2";
|
||||
break;
|
||||
case "H1" :
|
||||
visaClassName = "H1-B";
|
||||
break;
|
||||
case "H4" :
|
||||
visaClassName = "H-4";
|
||||
break;
|
||||
case "F1" :
|
||||
visaClassName = "F-1";
|
||||
break;
|
||||
case "F2" :
|
||||
visaClassName = "F-2";
|
||||
break;
|
||||
case "J1" :
|
||||
visaClassName = "J-1";
|
||||
break;
|
||||
case "L1" :
|
||||
visaClassName = "L-1";
|
||||
break;
|
||||
}
|
||||
|
||||
visa.setVisaClass(visaClassMap.get(visaClassName));
|
||||
@ -217,12 +240,12 @@ public class VisaImporter extends DataCrawl {
|
||||
String visaEntryName = StringUtils.upperCase(StringUtils.trimToEmpty(tds.get(3).text()));
|
||||
if (StringUtils.isNotBlank(visaEntryName)) {
|
||||
switch (visaEntryName) {
|
||||
case "NEW":
|
||||
visa.setVisaEntry(VisaEntry.NEW);
|
||||
break;
|
||||
case "RENEWAL":
|
||||
visa.setVisaEntry(VisaEntry.RENEWAL);
|
||||
break;
|
||||
case "NEW" :
|
||||
visa.setVisaEntry(VisaEntry.NEW);
|
||||
break;
|
||||
case "RENEWAL" :
|
||||
visa.setVisaEntry(VisaEntry.RENEWAL);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
@ -231,27 +254,27 @@ public class VisaImporter extends DataCrawl {
|
||||
String usEmbassyName = StringUtils.upperCase(StringUtils.trimToEmpty(tds.get(4).text()));
|
||||
if (StringUtils.isNotBlank(usEmbassyName)) {
|
||||
switch (usEmbassyName) {
|
||||
case "BEIJING":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "BeiJing"));
|
||||
break;
|
||||
case "CHENGDU":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Chengdu"));
|
||||
break;
|
||||
case "GUANGZHOU":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Guangzhou"));
|
||||
break;
|
||||
case "SHANGHAI":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Shanghai"));
|
||||
break;
|
||||
case "SHENYANG":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Shenyang"));
|
||||
break;
|
||||
case "WUHAN":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Wuhan"));
|
||||
break;
|
||||
case "HONGKONG":
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "HongKong"));
|
||||
break;
|
||||
case "BEIJING" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "BeiJing"));
|
||||
break;
|
||||
case "CHENGDU" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Chengdu"));
|
||||
break;
|
||||
case "GUANGZHOU" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Guangzhou"));
|
||||
break;
|
||||
case "SHANGHAI" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Shanghai"));
|
||||
break;
|
||||
case "SHENYANG" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Shenyang"));
|
||||
break;
|
||||
case "WUHAN" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "Wuhan"));
|
||||
break;
|
||||
case "HONGKONG" :
|
||||
visa.setUsEmbassy(USFactory.searchUSEmbassy("China", "HongKong"));
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
@ -264,15 +287,15 @@ public class VisaImporter extends DataCrawl {
|
||||
String visaStatusName = StringUtils.upperCase(StringUtils.trimToEmpty(tds.get(6).text()));
|
||||
if (StringUtils.isNotBlank(visaStatusName)) {
|
||||
switch (visaStatusName) {
|
||||
case "CLEAR":
|
||||
visa.setVisaStatus(VisaStatus.ISSUED);
|
||||
break;
|
||||
case "PENDING":
|
||||
visa.setVisaStatus(VisaStatus.ADMINISTRATIVE_PROCESSING);
|
||||
break;
|
||||
case "REJECT":
|
||||
visa.setVisaStatus(VisaStatus.REFUSED);
|
||||
break;
|
||||
case "CLEAR" :
|
||||
visa.setVisaStatus(VisaStatus.ISSUED);
|
||||
break;
|
||||
case "PENDING" :
|
||||
visa.setVisaStatus(VisaStatus.ADMINISTRATIVE_PROCESSING);
|
||||
break;
|
||||
case "REJECT" :
|
||||
visa.setVisaStatus(VisaStatus.REFUSED);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
@ -323,6 +346,14 @@ public class VisaImporter extends DataCrawl {
|
||||
publishTwitter(visaStatusLog);
|
||||
}
|
||||
|
||||
for (int i = twitterCount; i < twitterCount + 5; i++) {
|
||||
VisaStatusLog visaStatusLog = LogFactory.getVisaStatusLog(NumberUtils.toLong(String.valueOf(i)));
|
||||
if (visaStatusLog != null) {
|
||||
publishTwitter(visaStatusLog);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void publishTwitter(VisaStatusLog visaStatusLog) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user