首页  编辑  

InnoKB如何生成静态HTML链接页面以便搜索引擎可以快速检索?

Tags: /计算机文档/软件应用技巧/   Date Created:
How to create static link html page for InnoKB, so the search engineer robot crawler can crawl all pages?
WjjSoft的InnoKB,对搜索引擎十分不友好,不能生成静态链接给搜索引擎使用,因此搜索引擎爬虫很难抓取InnoKB的链接,不利于搜索引擎引流。
为了方便,可以扫描InnoKB数据库,并利用bash shell脚本,自动生成index.html来索引所有的首页。
下面为对应的bash shell代码,保存为index.sh,并利用crontab 加为计划任务,定时运行即可。
记得修改<innokb_dir>为innokb对应的目录,<db_id>为对应的数据库的ID。
如果有多个数据库处理,请修改一下代码即可。

XML='/<innokb_dir>/repository/<db_id>/__db_info.xml'
FILE='/<innokb_dir>/html/index.html'
IDS='/tmp/id_title.txt'
# sed -n 's/.*ii id="\([^ ]*\)".*tm0="\(.*\)".*/\1/p' $XML > $IDS
sed -n 's/.*ii id="\([^ ]*\)".*tm0="\(.*\)" .*title="\([^ ]*\)".*>/\1\t\3/p' $XML > $IDS
cat > $FILE<<EOF
<html><head><title>超级猛料</title>
<meta name="keywords" content="计算机技巧,Delphi,编程技巧,Linux,Windows,Shell,Bash,MySQL,数据库"/></head><body>
<h1>超级猛料</h1>
<a href='/view'>查看</a>
<a href='/edit'>编辑</a>
<a href='/admin'>管理</a>
<a href='http://mykb.amanzitel.com/view?dbid=SuperKB&q=aaa' target="_blank">搜索</a>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- text_only -->
<ins class="adsbygoogle"
     style="display:inline-block;width:468px;height:15px"
     data-ad-client="ca-pub-5480426373726373"
     data-ad-slot="7341780865"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
<hr />
<table border="0">
EOF
awk -F "\t" 'BEGIN {t=0;} {t++;} {if(t%3==1) {print "<tr>"}} {print "<td><a href=\"/archive/SuperKB/"$1"\">"$2"</a></td>"} {if(t%3==0) {print "</tr>"}} END {}' $IDS >> $FILE

cat >> $FILE <<EOF
</tr></table>
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-78465158-2', 'auto');
  ga('send', 'pageview');

</script>
</body></html>
EOF