Pythonのお勉強スクリプト3
2008/5/17(土) 午後 2:22
アンドロイド 練習用
URLを抽出してwgetで落としてみたい。
しかし、この方法で落とせるサイトは少ない^^;
もっと修行して、いろんなファイルを自動で落とせるスクリプトを作ってみたいものだ。
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# htmlページをwgetしてURLを抽出したリストを作
# 初期設定 → カレント,作業,保存ディレクトリ
import os,urllib,re,commands
folname1 = '/home/ユーザー名/デスクトップ'
folname2 = 'gtmp'
folname3 = ''
# 作業フォルダが既にあったら終了、なければ作成
print '
os.chdir(folname1)
if os.path.exists(folname2) == 1:
else:
# 保存フォルダ名を入力 既にあったら終了
folname3 =raw_input('保存フォルダ名?=')
if os.path.exists(folname3) == 1:
# 処理するhtmlをダウンロード
os.chdir(folname1 + '/' + folname2)
geturl = raw_input('\nURLを入力してください。\n')
urllib.urlretrieve(geturl,'html.txt')
# URLを抽出する
i = open('html.txt', 'r')
s = i.read()
reg = re.compile(r'o = open('list.sh','w')
o.write('#! /bin/bash\n')
o.write('cd ' + folname1 + '/' + folname3 + '\n')
for r in reg.finditer(s):
i.close()
o.close()
# 実行権限を与え 作業フォルダをリネーム
commands.getoutput('chmod 755 list.sh')
os.chdir(folname1)
os.rename(folname2, folname3)
簡単にメモを取る魔法
https://blogs.yahoo.co.jp/memo_jane/
Pythonのお勉強スクリプト4
2008/5/18(日) 午前 10:31
アンドロイド 練習用
Pythonでの日本語の扱い
Pythonのデフォルトはユニコード。
utf-8はユニコードだと思っていたけど、別ものらしい。
デコード
もとのデータを取り出すこと ユニコードに変換する
関数の使い方はちょっと違うけど、decode()とunicode()は同じ
エンコード
データ符号化 ユニコード以外に変換する s-jis euc-jp utf-8などへ
encode()
2行目に
# -*- coding: utf-8 -*-
'
u'
ex)
>>> len('日本語')
9
>>> len (u'日本語')
3
import os
list = os.listdir('/home/mobi')
for l in list:
print l.decode('utf-8')
■unicode()関数
ユニコードにする
unimoji = unicode('ゆにこーど', 'utf-8')
mojiretu = '日本語'
u_ignore = unicode(mojiretu, 'euc-jp', 'ignore')
コードがおかしくても、できるだけ変換してしまう。(指定した動作)
u_strict = unicode(mojiretu, 'euc-jp', 'strict')
コードがおかしい時は、エラーにする(デフォルト)
■decode()関数
他の文字コードをユニコードに変換
mojiretu = '文字列です'
unimoji = unicode(mojiretu, 'utf-8')
unimoji = mojiretu.decode('utf-8')
上の2つは同じ。
■encode()関数
ユニコードを別の文字コードに変換。
mojiretu = u'文字列です'
utfmoji = mojiretu.decode('utf-8')
■直接別の文字コードに変換
sjis_mojiretu = euc_mojiretu.decode('euc-jp').encode('shift_jis')
sjis_mojiretu = unicode(euc_mojiretu, 'euc-jp').encode('shift_jis')
どうもこういうことらしい。。。
簡単にメモを取る魔法
https://blogs.yahoo.co.jp/memo_jane/