分类目录归档:互联网

围脖是个好图床

转自:小众软件

围脖是个好图床 利用新浪微博来保存图片,使用简单。@Appinn

围脖是个好图床[图] | 小众软件

这里有一个 小书签 拖动到书签栏可以快速调用.

如果上面的方式不管用,把下面的代码存为书签即可。
javascript:void(function(){var%20d%20=%20document,a%20=%20′setAttribute’,s%20=%20d.createElement(‘script’);s[a](‘type’,'text/javascript’);s[a](‘src’,'http://weibotuchuang.sinaapp.com/bookmark.js’);d.head.appendChild(s);})();
请注意任何第三方的免费图片储存服务都无法保证长期可用,也无法保证一直可用外链,把数据掌握在自己手里才靠谱。

围脖是个好图床[图] | 小众软件 http://weibotuchuang.sinaapp.com/bookmark.html

java获取页面编码

最近研究抓取网页内容,发现要获取页面的编码格式,Java没有现成的实现方法。。只能自己写了

 

import info.monitorenter.cpdetector.io.CodepageDetectorProxy;
import info.monitorenter.cpdetector.io.HTMLCodepageDetector;
import info.monitorenter.cpdetector.io.JChardetFacade;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class WebEncoding {
	private static CodepageDetectorProxy detector = CodepageDetectorProxy
			.getInstance();
	static {

		detector.add(new HTMLCodepageDetector(false));

		detector.add(JChardetFacade.getInstance());

	}
	/**	测试用例
	 * @param args
	 */
	public static void main(String[] args) {
		WebEncoding web=new WebEncoding();
		try {
			System.out.println(web.getCharset("http://www.pujia.com/"));
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 * @param strurl
	 *            页面url地址,需要以 http://开始,例:http://www.pujia.com
	 * @return
	 * @throws IOException
	 */
	public String getCharset(String strurl) throws IOException {
		// 定义URL对象
		URL url = new URL(strurl);
		// 获取http连接对象
		HttpURLConnection urlConnection = (HttpURLConnection) url
				.openConnection();
		;
		urlConnection.connect();
		// 网页编码
		String strencoding = null;

		/**
		 * 首先根据header信息,判断页面编码
		 */
		// map存放的是header信息(url页面的头信息)
		Map<String, List> map = urlConnection.getHeaderFields();
		Set keys = map.keySet();
		Iterator iterator = keys.iterator();

		// 遍历,查找字符编码
		String key = null;
		String tmp = null;
		while (iterator.hasNext()) {
			key = iterator.next();
			tmp = map.get(key).toString().toLowerCase();
			// 获取content-type charset
			if (key != null && key.equals("Content-Type")) {
				int m = tmp.indexOf("charset=");
				if (m != -1) {
					strencoding = tmp.substring(m + 8).replace("]", "");
					return strencoding;
				}
			}
		}

		/**
		 * 通过解析meta得到网页编码
		 */
		// 获取网页源码(英文字符和数字不会乱码,所以可以得到正确区域)
		StringBuffer sb = new StringBuffer();
		String line;
		try {
			BufferedReader in = new BufferedReader(new InputStreamReader(url
					.openStream()));
			while ((line = in.readLine()) != null) {
				sb.append(line);
			}
			in.close();
		} catch (Exception e) { // Report any errors that arise
			System.err.println(e);
			System.err
					.println("Usage:   java   HttpClient   []");
		}
		String htmlcode = sb.toString();
		// 解析html源码,取出区域,并取出charset
		String strbegin = "<meta"; 		String strend = ">";
		String strtmp;
		int begin = htmlcode.indexOf(strbegin);
		int end = -1;
		int inttmp;
		while (begin > -1) {
			end = htmlcode.substring(begin).indexOf(strend);
			if (begin > -1 && end > -1) {
				strtmp = htmlcode.substring(begin, begin + end).toLowerCase();
				inttmp = strtmp.indexOf("charset");
				if (inttmp > -1) {
					strencoding = strtmp.substring(inttmp + 7, end).replace(
							"=", "").replace("/", "").replace(""", "")
							.replace("'", "").replace(" ", "");
					return strencoding;
				}
			}
			htmlcode = htmlcode.substring(begin);
			begin = htmlcode.indexOf(strbegin);
		}

		/**
		 * 分析字节得到网页编码
		 */
		strencoding = getFileEncoding(url);

		// 设置默认网页字符编码
		if (strencoding == null) {
			strencoding = "GBK";
		}

		return strencoding;
	}

	/**
	 * 
	 *
	 * 方法说明:通过网页内容识别网页编码
	 * 
	 *
	 * 输入参数:strUrl 网页链接; timeout 超时设置
	 * 
	 *
	 * 返回类型:网页编码
	 */
	public static String getFileEncoding(URL url) {

		java.nio.charset.Charset charset = null;
		try {

			charset = detector.detectCodepage(url);

		} catch (Exception e) {

			System.out.println(e.getClass() + "分析" + "编码失败");

		}

		if (charset != null)

			return charset.name();

		return null;

	}
}

附:要导入的开发包

更换主题为TangStyle

记录下做的小更改

//禁止自动保存草稿和修订版本 [开始]
remove_action(‘pre_post_update’, ‘wp_save_post_revision’ );
add_action( ‘wp_print_scripts’, ‘disable_autosave’ );
function disable_autosave() {
wp_deregister_script(‘autosave’);
}
//禁止自动保存草稿和修订版本 [结束]

 

取消了文章首页摘要

模板里的index.php文件,把里面的<?php echo mb_strimwidth(strip_tags(apply_filters(‘the_content’, $post->post_content)), 0, 330,”…”); ?>替换成<?php the_content(__(‘(more…)’)); ?>

添加了图片logo

<div><a href=”<?php bloginfo(‘url’); ?>”><img src=”http://www.7mdm.com/wp-content/themes/istudio-theme/resources/logo.png” alt=”齐码代码” border=”0″></a></div>

暂时就这些,这主题感觉还不错,很简洁清爽。

[转]SyntaxHighlighter使用方法

原名:SyntaxHighlighter,是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是HTML,CSS,Javascript,还可以是C,JAVA等编程语言。最早见于Yahoo的YUI,当时还属于自由软件,最近打开官方网站发现已被goolge收编。

它可以在网页中对各种程序源代码语法进行加亮显示。支持当前流行的各种编程语言:C#、CSS、C++、Delphi、Java、JavaScript、PHP、Python、Ruby、SQL、Visual Basic、XML / HTML
下载地址:http://www.dreamprojections.com/syntaxhighlighter/
或http://code.google.com/p/syntaxhighlighter/

该工具核心基于javascript,使用起来很简单:

继续阅读

[转]WordPress 性能优化和加速

建立这个WordPress博客时间并不长,但是可以说一直在尽力优化网站性能,加快页面的载入速度。几个月下来,靠身体力行并汲取了很多牛人的经验,自己对其也算有一点了浅薄的认识,所以做出一个初级的一个性能优化文章。

针对WordPress,可以把影响WordPress速度的因素归结为三点(单击小标题可直接跳转至该内容):

  1. 服务器端:一般就是指服务器进行MySQL数据库查询和将PHP解析为HTML的时间。
  2. 网络传输:服务器端与用户客户端之间传送数据的时间。
  3. 客户端:即浏览器解析HTML文件,渲染页面和执行JS脚本的效率、客户端的缓存、页面的CPU和内存占用等。

上面分的三类,往往都是互相关联的,许多优化方法,能归到以上三个分类的任意分类中。这里也只是简单的介绍一下优化的方法,使用分类会更加清晰一些。

用户打开某一页面的时间基本等于:服务器端时间+网络传输时间+页面解析和渲染时间(此项几乎可以忽略不计)

所以正文就以这三个因素分别说明其加速原理和实现,在此之前先介绍Firefox的三个扩展:

  • FireBug对于网络传输的监控和HTML、JS脚本的查看功能十分强大。
  • Yslow与PageSpeed,这两个扩展对影响页面速度的因素分析和评价十分详细,并且给出了比较完整的解决方案。

使用上述三个插件,便可以对自己网页的性能和可优化之处有比较全面的了解。

继续阅读