文書更新:2019年06月18日(火) 午後1時20分08秒

Home > 備忘録 > 言語関連 > 言語共通 > web page のソース読み込み( 47 )

下記のようにすると、大概の web page のソースを文字化けさせないで読込む事ができる

web page のソース読み込み

  1. ruby 版
  2. require "open-uri"
    
    url="http://kakaku.com"
    html = open(url).read
    h="UTF-8"
    #p Encoding.name_list	#エンコーディング名の一覧
    for hh in ["UTF-8","Shift_JIS","EUC-JP","ASCII","ISO-2022-JP"]
    	begin
    		html.encode("UTF-8",hh)
    		h=hh
    	rescue
    	#rescue Encoding::UndefinedConversionError
    		#エンコーディング変換後の文字が存在しない場合に発生
    	#rescue Encoding::InvalidByteSequenceError
    		#文字列がそのエンコーディングにおいて不正なバイト列である場合に発生
    	end
    end
    html.encode!("UTF-8",h)
    puts html
  3. php 版
  4. $url="http://kakaku.com"
    $html = file_get_contents($url);
    mb_language("Japanese");
    $html = mb_convert_encoding($html,"utf8","auto");
    print $html
  5. perl 版
  6. use LWP::Simple;
    
    $url="http://kakaku.com"
    my $html=get($url);
    print $html
  7. python 版
  8. import urllib2
    import lxml.html
    
    url="http://kakaku.com"
    f=urllib2.urlopen(url)
    html=f.read()
    html=lxml.html.fromstring(html)
    html=lxml.html.tostring(html,encoding="utf-8")
    print html