亲们~~我就要来郧西上班了

[复制链接] 1
回复
3268
查看
打印 上一主题 下一主题

1

主题

15

帖子

15

积分

初级会员

Rank: 1

积分
15
跳转到指定楼层
1#
发表于 2012-5-6 12:58:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多郧西好友

您需要 登录 才可以下载或查看,没有帐号?注册

x
来之前,先给论坛一个好东西哦~~

1:将AcquisitionSvcImpljava 替换原工程项目comjeecmscmsservice包下的对应文件。

2:编译工程即可

3:登陆后台配相关规则,如下所示参数:

====================================
*采集名称: 《排名第一的博客名或者其他网站排名第一的信息名》

*页面编码: UTF-8

  动态地址: 〈对应的网络地址〉

  页码 从   1  到:  2

内容地址集:   <!-- 列表 START -->*?<!-- 列表END -->

内容地址: target="blank" href="(*?)">(*?)</a></span>

标题:         <title>(*?)  〈〈对应的名称〉〉 </title>

内容:         <!-- 正文开始 -->(*?)<!-- 正文结束 -->  

package comjeecmscmsservice;

import javaioIOException;
import javanetURI;
import javautilArrayList;
import javautilList;
import javautilregexMatcher;
import javautilregexPattern;
import orgapachecommonslangStringUtils;
import orgapachehttpHttpEntity;
import orgapachehttpHttpResponse;
import orgapachehttpStatusLine;
import orgapachehttpclientClientProtocolException;
import orgapachehttpclientHttpClient;
import orgapachehttpclientHttpResponseException;
import orgapachehttpclientResponseHandler;
import orgapachehttpclientmethodsHttpGet;
import orgapachehttpimplclientDefaultHttpClient;
import orgapachehttputilEntityUtils;
import orgslf4jLogger;
import orgslf4jLoggerFactory;
import orgspringframeworkbeansfactoryannotationAutowired;
import orgspringframeworkstereotypeService;
import comjeecmscmsentityassistCmsAcquisition;
import comjeecmscmsentitymainContent;
import comjeecmscmsmanagerassistCmsAcquisitionMng;

@Service
public class AcquisitionSvcImpl implements AcquisitionSvc {
private Logger log = LoggerFactorygetLogger(AcquisitionSvcImplclass);

public boolean start(Integer id) {  
CmsAcquisition acqu = cmsAcquisitionMngfindById(id);
if (acqu == null || acqugetStatus() == CmsAcquisitionSTART) {
return false;
}
Thread thread = new AcquisitionThread(acqu);
threadstart();
return true;
}

private CmsAcquisitionMng cmsAcquisitionMng;

@Autowired
public void setCmsAcquisitionMng(CmsAcquisitionMng cmsAcquisitionMng) {
thiscmsAcquisitionMng = cmsAcquisitionMng;
}

private class AcquisitionThread extends Thread {
private CmsAcquisition acqu;

public AcquisitionThread(CmsAcquisition acqu) {  
super(acqugetClass()getName() + "#" + acqugetId());
thisacqu = acqu;
}  

@Override
public void run() {
if (acqu == null) {
return;
}
acqu = cmsAcquisitionMngstart(acqugetId());
String[] plans = acqugetAllPlans();
HttpClient client = new DefaultHttpClient();
CharsetHandler handler = new CharsetHandler(acqugetPageEncoding());
List<String> contentList;
String url;
int currNum = acqugetCurrNum();
int currItem = acqugetCurrItem();
Integer acquId = acqugetId();

for (int i = planslength - currNum; i >= 0; i--)  
{
url = plans[i];

contentList = getContentList(client, handler, url, acqugetLinksetStart(), acqugetLinksetEnd(), acqugetLinkStart(), acqugetLinkEnd());

String link;

if(contentList!=null)
{
for (int j = contentListsize() - currItem; j >= 0; j--)  
{
if (cmsAcquisitionMngisNeedBreak(acqugetId(), planslength - i, contentListsize() - j, contentListsize()))  
{
clientgetConnectionManager()shutdown();
loginfo("Acquisition#{} breaked", acqugetId());
return;
}
if (acqugetPauseTime() > 0)  
{
try  
{
Threadsleep(acqugetPauseTime());
}  
catch (InterruptedException e)  
{
logwarn("", e);
}
}
link = contentListget(j);
saveContent(client, handler, acquId, link, acqugetTitleStart(), acqugetTitleEnd(), acqugetContentStart(), acqugetContentEnd());
}
}
currItem = 1;
}
clientgetConnectionManager()shutdown();
cmsAcquisitionMngend(acqugetId());
loginfo("Acquisition#{} complete", acqugetId());
}


private List<String> getContentList(HttpClient client,
CharsetHandler handler, String url, String linksetStart,
String linksetEnd, String linkStart, String linkEnd) {

List<String> list = new ArrayList<String>();

try  
{
HttpGet httpget = new HttpGet(new URI(url));
String html = clientexecute(httpget, handler);

Pattern pt = Patterncompile(linksetStarttrim());
    Matcher m = ptmatcher(html);
     
    if(mfind())
    {
     html = mgroup();
    }
     
2#
发表于 2012-5-6 15:43:46 | 只看该作者
kan bu dong a!

huanying  louzhu
看其心,观其人。束缚与解脱都在于你的内心。如果你觉得被束缚,那么你就被束缚。如果你觉得被解脱,那么你就被解脱。束缚与解脱都来自与你的内心。如果你觉得被解脱,那么你就被解脱。如果你觉得被束缚,那么你就被束缚。外在的事物不会绑着你,也不会释放你。唯有你的心释然。

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

郧西论坛微信公众号
快速回复 返回顶部 返回列表