大侠们,高分求救,怎样获得各种论坛的留言信息?分不够再开贴:)

仲漫 2005-10-20 11:17:06
有一个朋友让我帮忙做一个小软件,
功能如下:
1、能够获得论坛的留言信息
2、将信息保存到数据库中(库结构如下:留言者,留言内容,留言时间,留言网址)
3、最好能够将该软件加到浏览器中,或浏览器的右键菜单中

注:不是只针对一个论坛,是指对普通论坛都要有这个功能

因为以前只接触过3个月的jsp和java,对网页编程不是很熟悉,
但迫于朋友面子,只好硬着头皮接下这个烫手山芋,
希望坛子上的大侠们能鼎力相助:)

可以给部分思路或相关的资料帮助,

呵呵,给建议者有分,如果这帖分不够,会另开贴相送
...全文
227 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
仲漫 2005-11-16
  • 打赏
  • 举报
回复
揭帖了,呵呵,谢谢楼上的诸位!
仲漫 2005-10-26
  • 打赏
  • 举报
回复
to: xlyyc(宇)
呵呵,太好了,谢谢!我先试试 :)


xlyyc 2005-10-26
  • 打赏
  • 举报
回复
获得HTML后使用正则表达式针对具体的HTML结构具体分析啊
xlyyc 2005-10-26
  • 打赏
  • 举报
回复
需要HTTPClient包支持,下载http://www.innovation.ch/java/HTTPClient/HTTPClient.zip

import HTTPClient.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.InputStream;
import java.io.OutputStream;

public class Login {
 private HTTPConnection connection;
 private static InputStream istr = null;
 private static OutputStream ostr = null;
 private static NVPair form_data[];
 private static HTTPConnection httpCon;
 private static HTTPResponse rsp;
 private static String host;
 private static Login instance;
 private Login(){
  getConnection("login.mail.sohu.com",80);
 }
 public static Login getInstance(){
  if(instance==null){
   instance = new Login();
  }
  return instance;
 }

 public static String request(HTTPConnection connection,String pathName,String method,NVPair form_data[]) {
  try{
    httpCon = connection;
   
    if(method.toLowerCase().equals("get")){
     if(form_data!=null){
      rsp = httpCon.Get(pathName, form_data);
     }else{
      System.out.println("pathName=="+pathName);
      rsp = httpCon.Get(pathName);
     }
    } else{
     if(form_data!=null)
      rsp = httpCon.Post(pathName, form_data);
     else
      rsp = httpCon.Post(pathName);
    }
   istr = rsp.getInputStream();
   BufferedReader reader = new BufferedReader(new InputStreamReader(istr));
   String line;
   StringBuffer result = new StringBuffer();
   while ((line = reader.readLine()) != null) {
    result.append(line + System.getProperty("line.separator"));
   }
   System.out.println("result=="+result.toString());
   return result.toString();
  } catch(Exception e){
   System.out.println("发生异常:");
   e.printStackTrace();
  }
return "";
 }

 public void releaseConnection(){//释放连接
  if (connection != null) {
   connection.stop();
   connection = null;
  }
 }
  public HTTPClient.HTTPConnection getConnection(String hostName,int port){//取得连接
    if(connection==null){
     try{
      connection = new HTTPClient.HTTPConnection(hostName,port);
      HTTPClient.CookieModule.setCookiePolicyHandler(null);
      connection.addDefaultModule(Class.forName("HTTPClient.CookieModule"), 1);
      connection.addModule(Class.forName("HTTPClient.RedirectionModule"),2);
     }catch(Exception e){
      e.printStackTrace();
     }
    }
    return connection;
  }

 public void Login(){
  NVPair[] form_data = new NVPair[2];
  //对应登陆需要的表单字段填写
  form_data[0] = new NVPair("UserName","用户名");
  form_data[1] = new NVPair("Password","密码");
  //提交到指定登陆页面
  String result=Login.getInstance().request(connection,"/chkpwd.php",post",form_data);
  System.out.println("登陆后取得HTML=="+result);
 }

 public static void main(String[] args) {
   Login al = Login.getInstance();
   try{
    al.Login();
   
    al.releaseConnection();
  }catch(Exception e){
   e.printStackTrace();
  }
  }
}
andy_1027 2005-10-26
  • 打赏
  • 举报
回复
像RSS啊~
xmadan 2005-10-26
  • 打赏
  • 举报
回复
针对单个的话知道格式还好......
要泛化的话嘛...........

不会....
仲漫 2005-10-25
  • 打赏
  • 举报
回复
自己再顶
仲漫 2005-10-25
  • 打赏
  • 举报
回复
还有,大家有没有用过超星阅览器?
我觉得有些可以方式可以借鉴一下,我的想法和它的获取页面信息部分有些相似,
就是不知道它是怎么处理页面的,呵呵
仲漫 2005-10-25
  • 打赏
  • 举报
回复
to:xukaisam(狂风大侠) 谢谢支持:)

to: liu_you(滴水藏海) 分析的有道理,我现在正要实现初期目标:)




仲漫 2005-10-25
  • 打赏
  • 举报
回复
to: xlyyc(宇)
呵呵,厉害,不能说是偷取别人的网站信息,只能说借来用用:)
你是怎么分析具体网页的?我也借来用用:)


liu_you 2005-10-25
  • 打赏
  • 举报
回复
初期目标:分析指定BBS;
二期目标:提供为增加BBS站点标记结构的工具;
后期目标:指定一个BBS站点,通过机器分析出结构.

难,我印象中网页采集工具对BBS的抓取都不是太理想.
xukaisam 2005-10-25
  • 打赏
  • 举报
回复
现在的论坛一般都只有几个版本,而每个版本的HTML代码又不太相同,做起来好像有点难度哦。
不过呢。如果真的做出来了,肯定会受到各位网友的喜爱的。
支持楼主做哦。
xlyyc 2005-10-25
  • 打赏
  • 举报
回复
我做过偷取别人网站的信息并存放到数据库的程序,但是由于具体网站的结构不同,只能针对具体网站来具体实现。
仲漫 2005-10-25
  • 打赏
  • 举报
回复
呵呵,楼上的能说的具体些吗?
fashchina 2005-10-25
  • 打赏
  • 举报
回复
做的东西多着呢,象table等html标签,可以通过写一个方法或者正则去html代码,
仲漫 2005-10-24
  • 打赏
  • 举报
回复
回答这个问题的人太少了,都快沉了,郁闷

爬虫之类的程序,我简单看了一下思路,
发现他们在搜索网站方面用的很广,虽然有借鉴的地方,
可是离主体思路还是差一点,
因为我主要不做网站相关的程序,
所以对爬虫程序理解的可能有偏差:),
有理解不对的地方,还请大家不要见笑,呵呵
仲漫 2005-10-24
  • 打赏
  • 举报
回复
呵呵,我也不知道能用到什么地方,可是答应他也是为了锻炼一下自己,
好久没有接触JAVA了有点怀念它了:)
其实我觉得这个应该有用得,但是如果只有这一个单一功能恐怕用处就不会很大了,
不过我觉得能做好它,也是对自己得一个锻炼
楼上的你说是吧
仲漫 2005-10-24
  • 打赏
  • 举报
回复
to:thumb3344(祖国啊,我只是一个摆地摊的!)
中午的时候以为帖子沉了呢,没想到兄弟帮顶了起来,呵呵,谢谢了,同时也谢谢你的鼓励:)
仲漫 2005-10-24
  • 打赏
  • 举报
回复
to: QWERT520(别来无恙)

专门谈论做论坛的东西也看过不少,可是,我觉得最关键是怎么分析一个网页,现在我可以获得网页上的信息为相应的文本信息,也可以对文本信息进行分析,可是正如 yxhzj(余华[学习J2EE中]) 说的,怎么分析html或xml文档,这个好像有点困难:)

而且关键朋友还有个要求,是将在网页上选择的信息保存吓了,有点象从网页上选择一部分拷贝一样,只是直接从网页上拷贝的时候,可能会将table格式一起考下来,这个小软件只保留论坛上需要的部分,table部分要去掉



thumb3344 2005-10-24
  • 打赏
  • 举报
回复
楼主的这东西,加油。作出来之后有点像bt给下载来的影响,要载入史册了。
加载更多回复(13)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧