わくわくプログラミング忘備録

都内でエンジニアをしている者です。このブログは自分が困ったこととその解決策のメモ集です。

はてなブログはセキュリティガバってる

本ブログでも書くつもりだが、記事にjavascript埋め込めるじはてなブログってどうなん?

XSSの温床な気しかしないが……

↓のボタンをクリックすると??

(悪意のあるコードは仕込んでないです。)

 

 

ボタン

画像のサイズを一括で変更するpythonコード

わざわざ書いておくほどのものでもないが、指定したフォルダ内の画像ファイルサイズを一括で変更するコードをおいておきます。
まず、作業ディレクトリ上に
target
results
という2つのフォルダーを作って、targetの中にサイズを変えたい画像ファイルたちをぶち込んでおきます。
そしてこのコードを実行すると、サイズが(300,300)に変更されたものがresults内に吐き出されます。もちろんコード内の(300,300)の部分をいじると好きな大きさに変更可能。



from PIL import Image
import glob
import argparse
#help message
parser = argparse.ArgumentParser(usage='Make "target" folder and put
images to be renamed in it. The renamed images will be in "results"
folder.',add_help=True)
# 引数の追加
parser.add_argument('-s', '--size',default=(300,300),help="This code
cnverts images into (xx,yy) size. Please see the code")
args = parser.parse_args()
#名前を変えたい画像たちをいれておくフォルダ名
target_folder = 'target'
path = target_folder+'/*'
files=glob.glob(path)
assert len(files)>0,"target folder is empty."
#結果はresultsフォルダーに入る
images = glob.glob("target/*")
m=1
for image in images:
img = Image.open(image)
img_resize_lanczos = img.resize(args.size, Image.LANCZOS)
img_resize_lanczos.save('results/'+str(m)+'.jpg')
m+=1

ディレクトリ内のファイル名を一括で変更するpythonコード

わざわざ書いておくほどのものでもないが、フォルダ内のファイル名を一括で変更するコードをおいておきます。
まず、作業ディレクトリ上に
target
results
という2つのフォルダーを作って、targetの中に名前を変えたいファイルをぶち込んでおきます。
そしてこのコードを実行すると、名前が1.jpg,2.jpg,3.jpgという風に変更されたものがresults内に吐き出されます。



import os
import glob
import argparse
import shutil
#help message
parser = argparse.ArgumentParser(usage='Make "target" folder and put
images to be renamed in it. The renamed images will be in "results"
folder.',add_help=True)
# 引数の追加
parser.add_argument('-c', '--copy',default=1,help="1:copy,0:move")
args = parser.parse_args()
#名前を変えたい画像たちをいれておくフォルダ名
target_folder = 'target'
path = target_folder+'/*'
files=glob.glob(path)
assert len(files)>0,"target folder is empty."
i=1
#コピーする場合
if bool(int(args.copy)):
for img in files:
shutil.copy(img, "results/"+str(i)+'.jpg')
i+=1
#移動する場合
else:
for img in files:
os.rename(img,"results/"+str(i)+'.jpg')
i+=1
#結果はresultsフォルダーに入る

reactとnode.jsを導入する

reactとはMVCのうちのviewの機能作成を便利に行えるjavascriptライブラリ。

しっかりインストールしようとするとnode.jsやら色々入れておく必要があるらしいが、
当方javascript触るのは今回が初めてなのでめんどいことしたくないのと、今後jsに一切触れない可能性もなきにしもあらずなので

<script src="http://fb.me/react-0.13.3.js"></script>
<script src="http://fb.me/JSXTransformer-0.13.3.js"></script>

をコード中に書く方法でとりあえずしのごうか。

ーーーーーーーーーーーーーーーーーーーーー
npm install react --save

で入るっぽいが、そもそもnpmって何?っていう状態。
おそらくpythonでいうpipのようなパッケージ管理ソフトだと思うが。
まずこれを入れるのがダルい。
ーーーーーーーーーーーーーーーーーーーーー


と思っていたが、いろいろやってくうちに限界を感じ、ちゃんとインストールインストールすることを決意
まず
https://qiita.com/maecho/items/ae71da38c88418b806ff
を参考にnodejsをインストール。

次に作業ディレクトリに移動して

npm init

がちゃがちゃ言われるがとりあえずenter連打でOK
最後に
yes

これでpackage.jsonが作成される。

あとは
npm install react --save
でreactインストール完了。