论坛正文提取java代码 论坛正文提取java代码

怎样用Java UltraEdit设计软件爬取网页,并抽取网页正文爬取网页
这个论坛正文提取java代码,可以使用
url = new URL(urlStr);
con = (HttpURLConnection) url.openConnection();
state = con.getResponseCode();
if (state == 200) {
。。。。。。。。
}
提取内容就要看情况论坛正文提取java代码了 。。。。。。。。
Java语言编写提取网页信息!求高手指导!你得先查看sina微博空间的用户日志页面的源代码以及用正则表达式表示它通配的URL,这样你就可以抓取到你想要的东西了,我这边做了一个抓取sina , 网易,yahoo网站上的新闻资讯,需要给我发邮件,我邮箱:yghsxdr2009@163.com
java正则表达式从Html文件中提取正文内容就要看你的正文内容是在那个标签元素下面了,关于HTML页面的解析,推荐用xpath处理
Java 如何只提取网页源代码中的正文部分,就是正文部分包含标签也没关系 , 就是要那部分包含标签的正文相似网页可以用正则表达式来截取
不同网站的设计,对正文部分没有一个统一的规则 。。。
只能找规律 , 然后做一个类似通解的方法,但是误差无法避免了 。。
大概思路如下:
可以尝试着做一个对比的方法,找出某个标签内的文字和标签的比例最大
文字最多,标签最少的一般来说是正文
具体实现:
得到网页内容,把网页内容分析成一个树(按照每个标签为一个节点) , 树的内容包含子节点数和该树一下的文字内容数量 。
大概的对节点进行对比分析 , 得到节点最少,文字最多的节点 。这个就是那个正文节点了 。
以上内容只适合博客、文章、新闻类的网站 。搜索引擎网站等很多标签穿插其间的无法适用 。
如何用Java实现模拟登录Discuz!论坛并下载返回的html代码?package org.shaw;
import org.apache.commons.httpclient.Cookie;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;
public class BaiyouBBS {
static final String LOGON_SITE = "";
static final int LOGON_PORT = 80;
public Cookie[] login(String name, String pas) {
try {
HttpClient client = new HttpClient();
client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT);
PostMethod post = new PostMethod("/logging.php?action=login");
client.executeMethod(post);
String responseString = new String(post.getResponseBody(), "gbk");
post.releaseConnection();
String formhash = getFormHash(responseString);
System.out.println(formhash);
post = new PostMethod("/logging.php?action=login");
NameValuePair[] params = new NameValuePair[11];
params[0]= new NameValuePair("loginfield", "username");
params[1]= new NameValuePair("username", name);
params[2]= new NameValuePair("password", pas);
params[3]= new NameValuePair("referer", "index.php");
params[4]= new NameValuePair("questionid", "0");
params[5]= new NameValuePair("answer", "");
params[6]= new NameValuePair("cookietime", "2592000");
【论坛正文提取java代码 论坛正文提取java代码】params[7]= new NameValuePair("formhash", formhash);
params[8]= new NameValuePair("loginmode", "");
params[9]= new NameValuePair("loginsubmit", "true");
params[10] = new NameValuePair("styleid", "");
post.setRequestBody(params);
client.executeMethod(post);
//responseString = new String(post.getResponseBody(), "gbk");
post.releaseConnection();
GetMethod get = new GetMethod("/index.php");
client.executeMethod(get);

推荐阅读