Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] discuz X2转帖工具、采集工具

[复制链接]
linming2561 发表于 2012-5-17 22:37:34 | 显示全部楼层 |阅读模式
本帖最后由 linming2561 于 2012-5-17 23:07 编辑



  由于是winform程序,请先保证你的电脑已经安装.netframework2.0以上版本。
  介绍下界面上文本框按钮的作用,以下以厦门艺术网为例:
  文章来源:http://www.xmysw.cn/portal.php?mod=list&catid=2
  链接包含:article
  这样点获取列表,将会获取链接包含article的所有链接.这里基本上就是来源中的文章列表了。
  你还可以对标题进行处理,如:标题包含:厦门;还可以对标题部分内容进行替换,替换格式为 原内容=>新内容,两个替换规格之间用||分隔,例如:厦门=>福建||艺术=>艺术网,这样将会把标题中厦门、艺术分别替换成福建、艺术网,下面的内容替换也同样的格式。由于discuz x2标题长度被限制,所以系统提供标题长度检查功能。点击标题检查,会提示共有几个标题过长,系统会在标题过长(默认超过80字符)的标题前加“标题过长...”,找到这些标题,修改至80字符以内就可以了。
  接下来的获取内容,随便打开一个新闻内容页,IE8以上版本或火狐按F12弹出工具,选择新闻内容的标签,在内容标签上填入(div、td)等,这里是td,标签规则中填入id=xx或class=xxx,这要看内容页里是怎么定义的,这里是id=article_content,注意,这里的字符全是半角格式。填完后,可以在内容替换中填入替换格式,跟标题替换一样的,就不解释了。填完点获取内容,系统会自动去解析链接获取内容,并填充到列表文章内容中。若显示“未找到符合条件的内容”,则检查内容标签和标签规则是否有错。
  接下来就是发表了,打开论坛发帖页面,复制地址填入发帖地址,点预览登录,这里会跳转至登录页面,登录就可。若有设置主题分类,待发帖页面加载完点击获取分类,会自动加载发帖页面中的主题分类,选中你要发的主题分类即可。如未设置主题分类,将“没有主题分类”勾上即可。
  到此所以设置完毕,点击开始发表,系统会自动从列表中获取帖子标题、内容进行发帖。还需提醒的是如果帖子内容中包含图片,请安装远程图片本地化插件,可完美解决此问题。远程图片本地化插件可参考:Discuz! X1.5/X2.0远程图片本地化插件 http://www.kuangren.cn/thread-649429-1-1.html

要能够发帖,还得在static/js/forum.js中增加一段js函数才行,用ftp工具下载static/js/forum.js,将以下代码加入任意位置覆盖至网站上即可。
  1. function html_trans(html,lb){
  2. var str = html;
  3. str = str.replace(/\r/g,"");
  4. str = str.replace(/on(load|click|dbclick|mouseover|mousedown|mouseup)=("|')?[^>]+?\2(?: |>)/ig,"");
  5. str = str.replace(/<script[^>]*?>([\w\W]*?)<\/script>/ig,"");

  6. str = str.replace(/<span[^>]*?display\s*?:\s*?none[^>]*?>([\w\W]*?)<\/span>/ig,"");
  7. str = str.replace(/<span[^>]*?font\s*?-\s*?size\s*?:\s*(0px|0pt)[^>]*?>([\w\W]*?)<\/span>/ig,"");
  8. str = str.replace(/<font([^>]+)(0px|0pt)+([^>]*)>([\w\W]*?)<\/font>/ig,"");

  9. str = str.replace(/<a[^>]+href=[" ]?([^"]+)[" ]?[^>]*>(.*?)<\/a>/ig,"[url=$1]$2[/url]");
  10. str = str.replace(/<font([^>]+)color=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[color=$2]<font$1$3>$4</font>[/color]");
  11. str = str.replace(/<font([^>]+)size=([^ >]+)([^>]*)>(.*?)<\/font>/ig,"[size=$2]<font$1$3>$4</font>[/size]");
  12. str = str.replace(/<font[^>]+face=([^ >]+)[^>]*>(.*?)<\/font>/ig,"[font=$1]$2[/font]");
  13. str = str.replace(/<img[^>]+src=[" ]?([^"]+)[" ]?[^>]*>/ig,"\n[img]$1[/img]\n");

  14. str = str.replace(/<object[^>]*?6BF52A52\-394A\-11d3\-B153\-00C04F79FAA6[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[wmv]$2[/wmv]\n");
  15. str = str.replace(/<object[^>]*?D27CDB6E\-AE6D\-11cf\-96B8\-444553540000[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[swf]$2[/swf]\n");
  16. str = str.replace(/<embed[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*src=[" ]?([^"|^ ]+)[" ]?[^>]*>/ig,"\n[swf]$1[/swf]\n");
  17. str = str.replace(/<embed[^>]*src=["]?([^"|^ ]+)["]?[^>]*type=["]?application\/x\-shockwave\-flash["]?[^>]*>/ig,"\n[swf]$1[/swf]\n");
  18. str = str.replace(/<object[^>]*?CFCDAA03\-8BE4\-11cf\-B84B\-0020AFBBCCFA[^>]*?>.*<param[^>]+name\s*=\s*["](url|src)["][^>]+value=[" ]?([^"]+)[" ][^>]*>.*<\/object>/ig,"\n[rm]$2[/rm]\n");

  19. str = str.replace(/<([\/]?)b>/ig,"[$1b]");
  20. str = str.replace(/<([\/]?)strong>/ig,"[$1b]");

  21. str = str.replace(/<([\/]?)u>/ig,"[$1u]");
  22. str = str.replace(/<([\/]?)i>/ig,"[$1i]");

  23. str = str.replace(/ /g," ");
  24. str = str.replace(/&/g,"&");
  25. str = str.replace(/"/g,""");
  26. str = str.replace(/</g,"<");
  27. str = str.replace(/>/g,">");

  28. str = str.replace(/
  29. /ig,"\n");
  30. str = str.replace(/<p[^>]*?>/ig,"\n\n");
  31. str = str.replace(/<[^>]*?>/g,"");
  32. str = str.replace(/\[url=([^\]]+)\]\n(\[img\]\1\[\/img\])\n\[\/url\]/g,"$2");
  33. str = str.replace(/\n+/g,"\n");

  34. try{
  35. extraCheck(4);
  36. document.getElementById("e_textarea").value = str;
  37. document.getElementById("e_iframe").contentWindow.document.body.innerHTML = html;

  38. if(lb!="err"){
  39. document.getElementById("typeid").options[0].value = lb;
  40. document.getElementById("typeid").value = lb;
  41. }
  42. document.getElementById("postsubmit").click();
  43. }catch(err){alert(err.message);}
  44. }
复制代码


如果有其他更好建议,或发现程序有bug,请加QQ群45311550讨论!

原创文章,转载请注明作者

本帖子中包含更多资源

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

x
 楼主| linming2561 发表于 2012-5-17 22:58:01 | 显示全部楼层
沙发自己坐....
回复

使用道具 举报

 楼主| linming2561 发表于 2012-5-17 23:05:24 | 显示全部楼层
顶顶```
回复

使用道具 举报

 楼主| linming2561 发表于 2012-5-18 08:47:23 | 显示全部楼层
回复

使用道具 举报

 楼主| linming2561 发表于 2012-5-18 14:47:55 | 显示全部楼层
围观 ....
回复

使用道具 举报

 楼主| linming2561 发表于 2012-6-4 11:21:03 | 显示全部楼层
{:soso_e101:}是不是都用不上呀...怎么都没人感兴趣...
回复

使用道具 举报

ip123.com 发表于 2012-6-4 11:26:14 | 显示全部楼层
有没有x2.5的?
回复

使用道具 举报

 楼主| linming2561 发表于 2012-6-11 09:11:52 | 显示全部楼层
ip123.com 发表于 2012-6-4 11:26
有没有x2.5的?

没测试过!
回复

使用道具 举报

9#
无效楼层,该帖已经被删除
 楼主| linming2561 发表于 2012-6-11 16:24:46 | 显示全部楼层
dsvnv 发表于 2012-6-11 14:37
顶一下

http://www.travel818.com  overgoo.com

谢谢      
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-27 10:12 , Processed in 0.028265 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表