1.关于采集的。我的采集信息用的是正则式。我的正则式只能采集单个记录里的一个字段。表达式是这样(起始字符)(?<字段1的内容>.*)(结束字符)
这样的话每次就只能采集一个信息里的一个字段,我想一次能采集倒一个信息里的所有字段。我设想的是这样生成正则式
(起始字符1)(?<字段1的内容>.*)(结束字符1)(.*)(起始字符2)(?<字段2的内容>.*)(结束字符2)
可是这样我就采集补到,希望能给点帮助。
2.关于采集道德信息如何删除其中的HTML标签的。如何删除其中的HTML标签呢?再假如,如果我采集的信息内容本身就是HTML源代码的话,如和提出其信息中的HTML标签呢?
3.关于分页采集的,如何采集多个页面?是使用全站搜索类似爬虫程序,还是根据网址里网页参数变化来采集呢?比如Http://www.aa.com?page=*(0-200)
如果是后者,那么如何采集没有直接网址,而是用JAVASCRIPT 函数处理的网页呢?希望能给点思路。
4.关于采集非文字类信息,比如文件,电影,图片,Mp3等等,如何采集,如果有目录结构的如何实现跟所采集的网站一致呢。
5.关于采集时,是用多线程还是单线程呢?同步和异步?对这部份我不是很懂,希望能点建议。
6.关于发布,是直接发布到目标数据库,如果目标数据库是再服务器上,能够直接连接呢?如果是ACESS数据库又该如何操作呢?如果是支持发不到论坛,又该如何操作呢?
7.关于建立采集任务时,是单个任务一个数据库呢?还是公用一个数据库?如何新建一个数据库,比如新建一个ACCESS数据库文件。
关于问题,只要能解答其中一个就给分。对于分数我从来不吝啬。
如果分不够我可以另开贴给分。而且我想这个问题对于很多写信息采集的都有用处的。
请大家放心我一定会给予大家足够的分的。

解决方案 »

  1.   

    1.一次采集所有字段。
    可以啊,正则复杂点,就怕修改时,会把自已弄晕掉
    还是一个正则取一个字段吧,好调试,修改2.删除HTML标签做什么,不是用正则吗,取出想要的内容就行3.如果分页文件名是随机名,就用爬虫程序,不然用网页参数变化会简单些
    JAVASCRIPT,分页参数可能是POST过去,那就用GET试试,不行就POST,就是传递一些参数4.采集到文件,电影,图片,Mp3等等,把地址交给专门一个类来处理
    让这个类来处理5.多线程还是单线程。看你心情
    多线程,占资源。
    一般采集的内容会很多,用多线程,可以加速度。6.服务器弄个接口页面,采集端把数据POST过去,再存入数据库。7.数据不是很多,就用一个数据库吧上面纯个人看法。
      

  2.   

    1.如果我再一个页面截取多个记录,而且每个记录有包含有多个字段,每个记录的字段有的有内容,有的没内容,这样的情况下,如何去识别多个字段是再一条记录内的?能否给点正则式的具体写法?
    2,我的正则式是截取起始字符和结束字符中间的作为我信息的内容,有些时候,或者很多时候就会有HTML标签。比如<br></br>等等。
    这个时候如何剔去他呢?
    3.如何提取用JAVASCRIPT函数里产生的地址呢?
    4.下载的mp3保存再一个文件夹里?还是根据网址来自动生成目录结构呢?而对于用JavaScript类型的网址有如何自动生成目录呢?
    6.我要写的是个通用的,这样我不可能写一个所有数据库都能用的,就是能写,用什么脚本来写呢?如果服务器上只有PHP+mysql,那我需要怎么实现这个脚本呢?ASP,PHP,JSP,我都写一个?
    7.我觉得还是一个任务一个数据库比较好。如何通过我的程序去新建一个ACCESS数据库文件,SQL数据库文件。希望你能给点代码看看。或者参考书籍也可以。
      

  3.   

    1.先分开记录,再分析字段
    string html = "<div><ul><li>1</li><li>AAA</li></ul></div><div><ul><li>2</li><li>BBB</li></ul></div>";
    string pattern = "<div>(.*?)</div>"; 先取记录块
    string patternIDName = "<li>(.*?)</li><li>(.*?)</li>"; 再分析字段string[] array = .. // 匹配的记录块
    for(int i = 0; i < array.Length; i++)
    {
      ...进行字段匹配
    }2.HTML标签简单就Replace掉3.JAVASCRIPT,具体问题具体分析4.根据自已的需求,自已定吧6.难道接受服务器不是你的自已的。
    如果是别人的服务器,就告诉他POST的字段,让他自已处理。7.新建ACCESS不知道,SQL Server 可用 CREATE DATABASE 实现,很简单,自已搜吧你好象对web不了解,有些不能一步到位,就慢慢改吧
      

  4.   

    可能是我说的不够明白。不过还是谢谢楼上。
    1.我所寻找的是用一个表达式直接获取一条记录内的所有字段。你说的我已经实现了。
    而且你没有仔细看我开头的表达式。我已经写出来。但是我测试的时候没有结果,不知道是我的表达式有问题还是别的什么问题。所以我想求个表达式。
    2.我知道能替换,关键是我需要怎么替换,把所有的HTML的标签全部列出来?
    这样string.Replace("<br>");
    string.Replace("</br>");
    string.Replace("<html>");
    string.Replace("</html>");
    ............
    这样要写的代码是不是太多了?
    3.关键就是怎么分析,我就是不知道如何如分析才能吧JS的执行结果得到。能不能举个列子?
    4.我自己解决吧。
    5.创建数据库我是会的。可以把单个数据库作为一个文件吗?我不知道可不可以这样,关键就是ACCESS。
    6.我是想写一个能让任何人用的采集信息的通用程序。我不知道未来的用户是否使用服务器。和什么样子的服务器。这个还是我自己再找找吧。
      

  5.   

    1.测试的时候没有结果,就说你的正则表达示有问题。2.可以用正则替换HTML的标签
    string pattern = "<(.+?)>";3.你给个例子,我看看。很少有网站用JS做的分页导航
      

  6.   

    1.我就是想求个能获取整条的正则式。
    2.你考虑的不够周到。你的那个正则式会把所有的<和>之间的内容都屏蔽掉,不管她是不是HTML标签。
    这个我已经向好了怎么解决了。
    3.不是说JS做分页,而是防采集的。