利用chardet检测网页编码

环境:Win7_x64+python3.4.3需要先下载chardet并进行安装,下载地址:https://pypi.python.org/packages/source/c/chardet/c

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

环境:Win7_x64 + python3.4.3

需要先下载chardet并进行安装,下载地址:https://pypi.python.org/packages/source/c/chardet/chardet-2.3.0.tar.gz

安装:进入解压后的目录,在命令窗口执行: Python setup.py install

写个测试的python脚本吧(DetectURLCoding.py):

#coding:utf-8  
'''''python 3.x'''  
  
import sys  
import urllib.request  
import chardet  
  
# 将data写入文件fname  
def writeFile(fname, data):  
    f = open(fname, "wb")  
    if f:  
        f.write(data)  
        f.close()  
  
def blog_detect(blogurl):  
    '''''检测编码方式'''  
    try:  
        fp = urllib.request.urlopen(blogurl)  
    except Exception as e:  
        print(e)  
        print('download exception-[%s]' %blogurl)  
        return 0  
    blog = fp.read()    # python3.x read the html as html code bytearray  
    fp.close()  
    #writeFile("t.html", blog)  
      
    # get encoding string  
    codedetect = chardet.detect(blog)['encoding']  
    print('%s <- %s' %(blogurl, codedetect))  
    return 1  
  
if __name__=='__main__':  
    if len(sys.argv) == 1:  
        print('''''usage: 
            python DetectURLCoding.py http://xxx.com''')  
    else:  
        v = blog_detect(sys.argv[1])  
        print(v)  # 何问起 hovertree.com

运行结果:

D:\profile\Desktop>PYTHON de.py http://hovertree.com/  
http://hovertree.com/ <- utf-8  
1  
  
D:\profile\Desktop>PYTHON de.py http://photo.cankaoxiaoxi.com/roll10/2015/0318/709734.shtml  
http://photo.cankaoxiaoxi.com/roll10/2015/0318/709734.shtml <- utf-8  
1  

web前端:http://www.cnblogs.com/roucheng/p/texiao.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120432.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • win10下MinGW安装及配置

    win10下MinGW安装及配置下载MinGW安装管理器进入官网MinGW官网点击右上角download,加载可能有些慢,稍等一下。点击如图下载。下载完install安装点击change选择你要安装的目录,continue继续。等待下载,下载完成后单击continue继续。现在MinGW安装管理器就有了,可以正式安装MinGW了安装MinGW上一步安装好管理器之后会自动在桌面创建一个快捷方式,双击打开…

    2022年6月15日
  • java set 排序的_Set集合排序

    java set 排序的_Set集合排序TreeSet使用元素的自然顺序对元素进行排序,或者根据创建set时提供的Comparator进行排序,具体取决于使用的构造方法。通俗一点来说,就是可以按照排序后的列表显示,也可以按照指定的规则排序。Setset=newTreeSet();set.add(“f”);set.add(“a”);set.add(“b”);set.add(“c”);set.add(“d”);set.add(“e”…

    2022年5月26日
  • PHP中heredoc和nowdoc的用法

    PHP中heredoc和nowdoc的用法

    2022年2月23日
  • java开发面试题(40个常问面试题含答案,亲测有效)「建议收藏」

    java开发面试题(40个常问面试题含答案,亲测有效)「建议收藏」连接数据库的配置和操作加载JDBC驱动程序提供JDBC连接的URL创建数据库的连接需要向java.sql.DriverManager请求并获得Connection对象创建一个Statement对象执行SQL语句关闭JDBC对象创建对象的四种方式?1.使用new关键字创建对象2.通过反射的方式3.通过clone的方式j4.通过反序列化的方式接口与抽象类的区别?一个类只能继承一个抽象类,但可以实现多个接口抽象类可以有构造器,但接口不能有构造器抽象类中可以包含非抽象的普通方法,接口

    2022年7月7日
  • C++ 中获取 可变形參函数中的參数[通俗易懂]

    C++ 中获取 可变形參函数中的參数

    2022年1月20日
  • Ubuntu安装jdk8的两种方式[通俗易懂]

    Ubuntu安装jdk8的两种方式[通俗易懂]安装方式:1):通过ppa(源)方式安装.2):通过官网安装包安装.JDK官网下载地址一:使用ppa(源)方式安装:1):添加ppa源sudoadd-apt-repositoryppa:webupd8team/javasudoapt-getupdate2):安装oracle-java-installer(jdk8版本)sudoapt-getinstallorac…

    2022年7月12日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号