网站seo优化--jsoup 批量分析相关网站 标签,描述,关键词.

因为自己写了一个磁力搜索网站Btgoogle,准备进行优化一下,需要分析其他的网站的优化情况。

Java的Jsoup类库和PHP的一个Simple_html_dom框架具有异曲同工之妙,非常的相像.

比如Jsoup里面doc.select(".classname[:eq()]")Simple_html_dom里面的$html->find(".classname",[eq])都是尽量完整Jquery里面的功能.非常实用.后面对这两个东西准备对比分析一下.对比而言,Jsoup比功能还是强大不少,更加接近JS.

Python

import urllib2
import re
import sys
url= "http://www.*****.com"
req=urllib2.Request(url)
r=urllib2.urlopen(req)
html=r.read()
m = re.search('\<meta name="keywords" content="(.*)"\/\>',html)
print m.group(1)
m = re.search('\<meta name="description" content="(.*)"\/\>',html)
print m.group(1)

简洁的python版,python效率还是很不错的,不过看Jsoup那么方便,就直接用Jsoup

Jsoup

package keyword;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class keyword {
public static void main(String[] args) {
int i=0;
int error1=2;
for(i=0;i<=10;i++){
Document doc = null;
try {
doc = Jsoup.connect("http://www.baidu.com/s?wd=磁力搜索&pn="+i*10).get();
} catch (IOException e) {
e.printStackTrace();
}
Elements url = doc.getElementsByClass("g");
for (Element link : url){
String linktext=link.text().replaceAll("/(.*)","");
linktext="http://"+linktext;
System.out.println("链接:"+linktext);
Document linkin = null;
try {
linkin = Jsoup.connect(linktext).timeout(5000).header("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0").get();
} catch (Exception e) {
error1=1;
}
if(error1!=1){
String title = linkin.title();
Elements metas = linkin.head().select("meta");
for (Element meta : metas) {
String content = meta.attr("content");
if ("keywords".equalsIgnoreCase(meta.attr("name"))) {
System.out.println("关键字:"+content);
}
if ("description".equalsIgnoreCase(meta.attr("name"))) {
System.out.println("网站内容描述:"+content);
}
}
Elements keywords = linkin.getElementsByTag("meta");
System.out.println("标题"+title);
}
error1=0;
} }
}
}

这里面也有几个坑:

  • 1.403 错误 ,服务器拒绝访问,这是老生常谈的问题了.模拟浏览器就行了.
  • 2.超时错误,使用timeout(timelength)
  • 3.错误处理,当然如果出现错误,整个程序就会暂停,所以异常处理那段搞搞就行try{..}catch{..}

版权归石头(winipcss@outlook.com)和博客园所有,都拷去那么多了,这一段也拷贝了吧http://www.cnblogs.com/webers/p/4350813.html

网站seo优化--jsoup 批量分析相关网站 标签,描述,关键词.的更多相关文章

  1. 《大型网站SEO优化实践》学习分享

    本文主要内容源自2013年阿里技术嘉年华中阿里巴巴周文君分享<大型网站SEO优化实践>.学习过后,受益匪浅,特作笔记,经常回顾吸收学习. 大型网站SEO的特点&优势&挑战 ...

  2. 【网站管理6】_一个网站SEO优化方案

    首先,前端/页编人员主要负责站内优化,主要从四个方面入手: 第一个,站内结构优化 合理规划站点结构(1.扁平化结构 2.辅助导航.面包屑导航.次导航) 内容页结构设置(最新文章.推荐文章.热门文章.增 ...

  3. 【网站seo优化】SEO优化每天的工作内容是什么?

    [网站seo优化]SEO优化每天的工作内容是什么?从未知的领域来到seo,感到搜索引擎无比神奇,接触seo久了,有每天必做的工作内容,大量的seo从业者,每天的工作内容大同小异,主要做的工作有通过相应 ...

  4. 一个网站SEO优化方案

    首先,前端/页编人员主要负责站内优化,主要从四个方面入手: 第一个,站内结构优化 合理规划站点结构(1.扁平化结构 2.辅助导航.面包屑导航.次导航) 内容页结构设置(最新文章.推荐文章.热门文章.增 ...

  5. 网站SEO优化之添加Sitemap文件。

    Sitemap.xml 故名思意就是站点地图文件,可以指引Google spider 收录相应网页.正确地使用Google Sitemap,可以确保让Google spider 不遗漏网站内的任何页面 ...

  6. 网站SEO优化的方法

    网站SEO优化的方法: 1.url静态化和规范化:url中都去掉了index.php这样的后缀网址形式,目的就是让网站的层级更浅,获得的权重更高 代码中可以使用urlrewrite重写. 2.域名30 ...

  7. 谷歌蜂鸟算法对网站seo优化有何影响

    http://www.wocaoseo.com/thread-89-1-1.html       谷歌在过去三个月里,非常低调的推出了蜂鸟算法,据谷歌技术员表示,此种方法一出,将影响90%网站的排名, ...

  8. 网站SEO优化中内部链接的优化

    重要性:内链有效的优化能够间接的提高某页面的权重达到搜索排名靠前的效果.同时有效的带领搜索引擎蜘蛛对整站进行抓取. 网站头部导航: 这个导航称为'网站主导航',当用户来到网站需要给他们看到的内容.也就 ...

  9. 网站SEO优化问答精选

    1.百度每更新一次,网站的收录就减少很多,但是我每天都增加伪原创的内容啊? 这个问题大多数是因为网站权重导致百度不够重视你:另外就是文章质量度不高,没有可读性或是原创度太低,尽管百度会收录,但是经过一 ...

随机推荐

  1. 把DataTable 转换成Json格式,适用于EasyUI 绑定DataGrid

    本文转载:http://www.cnblogs.com/liang--liang/archive/2013/02/05/2893030.html public static string DataTa ...

  2. [Ember] Creating Your First Ember.js Project with Ember-CLI

    In this lesson, we'll setup Ember-CLI and use it to create and run our first Ember.js project. Insta ...

  3. Io_Language

    Object ancestor := method ( prototype := self proto if (prototype != Obejct, writeln ("Slots of ...

  4. asp遇到的一些问题

    1.伪静态问题...后台设置支持, 2.数据库链接错误,也就是说  .net 功能冲突,要后台关闭 3.本机也可以设置 iis服务器 win7配置自己的IIS服务器亲自做的图文很详细 http://j ...

  5. PHP【第一篇】安装

    一.准备 1.环境 系统平台:Red Hat Enterprise Linux Server release 7.3 (Maipo) 内核版本:3.10.0-514.el7.x86_64 2.下载安装 ...

  6. java中double四舍五入并设置小数点位数的问题

    本文系转载,原文地址:http://blog.csdn.net/star_huang/article/details/7639267 今天遇到个需要将一个double类型的数据保留小数点后两位的问题. ...

  7. position定位问题

    position属性规定了元素的定位类型,默认为static.该属性还可以有下值:absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.fixed:生成绝对定位的 ...

  8. iOS之Sqlite和FMDB

    在iOS 开发中,总会用到数据库的操作,来实现增.删.改.查. 尤其是查询. 一旦涉及到查询的操作,那就非得用数据库不可了.   SQLite (http://www.sqlite.org/docs. ...

  9. js相差天数计算

        dueDate = new Date(row.dueDate.replace(/-/g,'/'));                    if(dueDate<systemDate){ ...

  10. Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理

    Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理 >>>>>>>>>>>>>>>>& ...