Python関連のことを調べてみた2019年12月04日

Python関連のことを調べてみた2019年12月04日

Webスクレイピング前に確認すべき10問

[Webスクレイピング](https://www.octoparse.jp/)を使用すると、必要な情報を数秒で取得し、その裏側にある大きな価値を取得できます。しかし、私たちがその作業をする前に、確認すべき10問があります。

#1.[Webスクレイピング](https://www.octoparse.jp/)は違法なのか?

[robot.txt](https://ja.wikipedia.org/wiki/Robots_exclusion_standard
)ファイルの規定に従ってクロールが許可されている場合は、ターゲットWebサイトの利用規約(ToS)を事前に読んでデータプロジェクトの法的実現可能性を評価することをお勧めします。許可をとれていない場合のスクレイピングは禁止だという声明をはっきりしているサイトがあります。その場合、必ず許可を取っする必要があります。

#2.データ取得したいWebサイトを決める

データを収集する目的は何ですか?リード生成か?価格監視か?それとも営業リスト作成か? SEO分析?高い品質の情報はどこにあるか?ターゲットデータをどう探せればいいか

元記事を表示

まゆんごのPython学習記第8話:inputを試してみた

プログラムを書いていくと自分から入力しそれに応じて動かしたくなることがあります。

ここではinput()を使います。

ここではwordという変数の中に文字を入れています。

printするとそれがそのまま出てきます。

“`python
word = input()
aiueo

print(word)
aiueo
“`

それは数字でも可能です。

しかしそれを文字として扱うか数字として扱うかによって入力の仕方が少し変わってきます。

文字の場合はそのままinput(),数字とする場合はint(input())という形を取ります。

同じ1でもintを付けるかどうかでこれまで触れてきたのと同様扱いに違いが出てきます。

“`python
one = input()
two = int(input())
1
1

print(one + one)
print(two + two)
11
2
“`

int(input())の中に普通の文字を入れるとエラーが起きてしまうので注意しましょう。

“`python
print(int(input()))
afsfa

Valu

元記事を表示

「データ視覚化のデザイン #3」をpandasとmatplotlibで実装する

# データ視覚化のデザインって?
UXやUIを突き詰めたサービスで有名なTHE GUILDのGo Andoさんがnoteで公開した、データの視覚化のポイントをまとめたもの。

https://note.mu/goando/n/n99f6c395ae8a

# #1, #2 は?

* #1は以下を参照
* https://qiita.com/skotaro/items/cdb0732ad1ad2a4b6236

* #2は以下を参照
* https://qiita.com/okd46/items/ee27aeee714f54a8a6c5

# 注意事項
* フォントについて、macでは動きますが他OSだと多分動かないので別のフォントを指定してください。

“`python
plt.rcParams[‘font.family’] = ‘Hiragino Sans’
“`
の部分です。

# 13. 表にグラフを入れると効果的
![picture_pc_1bd02bdb34795599c91bc4e22a5657e2.png](https://qiita-i

元記事を表示

object detection の検出結果表示のクラス名を小さくする

# 環境
macOS mojave
python 3.6

# 困っていたこと
object detection では検出結果を画像に表示してくれるが、自前の画像で検出させた時に、クラス名が小さすぎて読めなかった。
tutorialの画像では見やすい大きさで表示されている。
https://github.com/tensorflow/models/tree/master/research/object_detection

# 解決策
以下のファイルに検出結果を描画するコードが書かれている。
object_detection/utils/visualization_utils.py

2019/12/04 時点では208行目でfontサイズが指定されている。

“`python
try:
font = ImageFont.truetype(‘arial.ttf’, 24)
except IOError:
font = ImageFont.load_default()
“`
コードを以下のように変更。

“`python
try:
font =

元記事を表示

foliumを使ってみた

## はじめに
最近foliumという、データを地図上で表示するライブラリを使ってみたので、勉強しながら記事にまとめてみました。

## foliumとは
[Folium](https://python-visualization.github.io/folium/)はデータを[Leaflet.js](https://leafletjs.com/)のマップで可視化をするpythonのライブラリです。

pythonのデータ操作とleafletのマッピングの両方の強みが利用できます。

Github:https://github.com/python-visualization/folium
Documentation:https://python-visualization.github.io/folium/

## インストール
pip installでインストールできます。

“`python:foliumのインストール
$ pip install folium
“`

## 地図を表示してみよう!
まずはjupyterで東京駅([35.681167, 139.76705

元記事を表示

【Python DataFrame】値が空のとき、別の列の値で埋める

# 想定データ

以下の人口統計データ。

市区町村名がNaNになっているところに、都道府県名を入れたい。

“`
団体コード 都道府県名 市区町村名 性別 総数 0~4歳 5~9 10~14 15~19 \
3 10006.0 北海道* NaN 計 5339539 181591 201119 213206 231870
4 10006.0 北海道* NaN 男 2522526 93048 102850 108783 118414
5 10006.0 北海道* NaN 女 2817013 88543 98269 104423 113456
6 11002.0 北海道 札幌市 計 1952348 71281 75025 76342 82644
7 11002.0 北海道 札幌市 男 913077 36715

元記事を表示

Visual studio codeの導入とpythonのインストール

備忘録としてwindowsでのpythonを使ったslackbotの作成を目的とした流れを書いていきます。
まずはVisual studio codeの導入とpythonのインストールを。

vscodeの公式に行きインストールします。
![visualcode画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/542570/0198874c-4363-ecc3-5a1b-02f8873d7f5f.png)
基本的にはデフォルトでインストール。デスクトップにアイコン置く設定に変えたくらい。

早速vscodeを起動すると英語なので日本語化します。
![日本語化.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/542570/39f7e999-02a2-c58e-a3b9-060861425e1e.png)
左下の赤く囲んだ部分をクリックするとMarketplaceの検索窓が開くのでJapaneseと検索、Japanese

元記事を表示

Twitterのフォロワー数に意味があるのか?実験してみると意外な結果に

こんにちは。[minmeeting](https://minmeeting.jp/)の伊勢川です。

最近よく見かける、Twitterの相互フォローやリツイート企画。
企業の広告などでも見かけるほど流行ってきていますが、本当に意味があるのでしょうか?

相互フォローとは、フォローしてくれたお礼に相手をフォローすることです。
相互フォローのハッシュタグで検索をして、その人達(bot?)をフォローしていけば、フォローバックされて数だけが増えるという仕組みです。

確かにそれをやればフォロワーは増えるのでしょうが、数だけ増やし

キーボードをピアノの鍵盤と想定して音を鳴らす

ピアノの鍵盤

やっほー! こんにちはー!
物理好きのオザキ([@sena0801masato](https://twitter.com/sena0801masato))です。

今回は、キーボードを鍵盤だと想定して、Pythonを使ってパソコンから音を鳴らしてみたいと思います。
思いついたのは、アニメ『四月は君の嘘』を見て感動した時でした笑
音楽は全然詳しくないのでむしろ教えてください。

### この記事の対象者
– パソコンから音階を鳴らしてみたい!
– 標準モジュールだけ使いたい
– 音源をダウンロードしたくない
– Windowsを使っている

## 今後改善したいこと
– ビープ音ではな

pytubeを使ってみよう

#[IPFactory Advent Calender 2019](https://qiita.com/advent-calendar/2019/ipfactory) 4日目
大層な記事を書けるほどの知識はありませんが、4日目書かせていただきます。
IPFactory所属、ISC 1年生の[pycys](https://twitter.com/PycysA)です。

##pytubeとは
Pythonのライブラリです。
YouTube上の動画を簡単にダウンロードできます。

##環境
– Windows 10 Pro
– Python 3.7.4

##インストールしよう
“`
pip install pytube
“`
上記をbashなりコマンドプロンプトなりに打ち込めばインストールされます。

##動画をダウンロードしてみよう
早速ダウンロードしてみましょう。

“`python:download1.py
from pytube import YouTube

YouTube(“ダウンロードしたい動画のURL”).streams.first().download()
“`

Pythonで画像データをJSONにしてネットワーク越しに送受信する

# はじめに
 Webカメラで撮った画像をHTTPの通信を介して顔検出モデル等が動いている別のサーバーに送信するようなコードを何度か書いたので忘れないようにメモする。
 サンプルコードでは、送信側でWebカメラから撮った画像を一定間隔でサーバに送信し、受信側で顔を検出してボックスを描画した上でローカルに画像ファイルを保存している。

# 送信側

“`python:sender.py
import numpy as np
import cv2
import time
import json
import base64
import requests

def send_image(img):
# 画像を送信可能な形式に変換してJSONに格納
_, encimg = cv2.imencode(“.png”, img)
img_str = encimg.tostring()
img_byte = base64.b64encode(img_str).decode(“utf-8”)
img_json = json.dumps({‘image’: img_byte}).en

対話型LINE BOTの作り方004 (上場企業の決算日を答える)

#概要

[前回](https://qiita.com/mahiroaug/items/1b8ca9f5dd605f6134e4)、株価情報を取得する機能を実装したわけだが、現実問題として「そんなの、わざわざBOTに聞かなくても、株アプリ使ったほうが便利じゃね」というツッコミを受けることは時間の問題であり、自身も御多分に漏れず某ポートフォリオ管理アプリを日常的に使っているわけで、今更BOTに株価をピンポイントで教えてもらいたいというニーズを持つには至らないわけである。
そこで改めて原点に立ち返って、どんな機能が欲しいかを自問し、より実用性のある機能を模索してみた。

「そうだ、決算(予定)日を一括で把握できたら便利じゃん」

多くの銘柄を保有している場合、いちいち個別銘柄の決算、半期決算、四半期決算などの予定を日々把握しておくことは結構手間なのである。これを一元的に収集して可視化できるような機能があれば便利だし、なによりBOT本来の在り方らしくて良いと思う。

というわけで今回は、WEBサイトから情報をピンポイントで抜き出して分析するスキルの強化を目的としたスクレイピングテクニックを極

【Coursera】Applied Data Science専門講座 1ヶ月半で取得した話

## きっかけ
台風の影響で学祭が中止になって時間ができた。よっし、なんかやってみよう。
## 受講した講座
IBMが提供している[Applied Data Science専門講座](https://www.coursera.org/specializations/applied-data-science)を受講した。
スクリーンショット 2019-11-04 13.24.51.png
スクリーンショット 2019-11-04 13.24.37.pngHtoAを使ったAss/Alembicの利用方法

#はじめに
もう毎年~~高齢~~恒例のHoudini Advent Calendar。
さて何を書こうかと考えたけど、ボクは今年はArnoldばかりさわってるのでHtoA(Arnold for Houdini)で参考になりそうな情報を書きたいと思います。
Arnoldとはレンダラーの1つで、

– Houdini(HtoA)
– Maya(MtoA)
– 3dsMax(MaxtoA)
– Cinema4D(C4DtoA)
– Softimage(SitoA)
– Katana(KtoA)
– Gagffer(GafferArnold)
– Blender(BtoA)
– 他にもGolaem、Massive、NukeなどでもArnoldに対応していたりします。

つまり、メジャーどころのソフトがたいてい対応しているレンダラーで、映像業界では事実上のデファクトスタンダードと言えます。
しかも、バッチレンダーライセンス1本でどのDCCでもレンダリングできるというコスト面でも優しいです。
さらには、C++だけでなく**O**pen **S**hading **L**anguage(OSL)でシ

Python用の設定ファイルを書くときのメモメモ:configparser

最近Laravel vuejsにハマってます。Pythonも書いてますが、ちょっと減り気味。
携わってたサービスが少し前に進みそうで嬉しい。

なんか良くこれ彷徨う気がするので自分用のメモ。
なんかiniファイルとか読み込むときの簡易サンプルである。

これいいね。これが欲しかった。ってか何でライブラリで機能提供されてないの。
https://qiita.com/suto3/items/db6f05f943cc2ea2ef59

“`python:
#!/usr/bin/env python
# -*- coding:utf-8 -*-

【Python】市区町村レベルの塗り分け地図プロット

# この記事の目的

Pythonで以下の様な, 市区町村レベルの塗り分け地図を描く

![plot08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/540956/eec08c1b-23ff-199a-a61e-947722b5ac4a.png)

当初は, geopandas + geoplotで行おうと思っていたが, Google Colabでgeoplotがうまくインストールできなかったため, geoplotを諦めいろいろ行錯誤して, 最もシンプルであろう方法にたどり着いた.
基本的にgeopandasが追加でインストールできればOK.

ちなみに塗り分けの色は, 今回は乱数の値を元にしているので, 適宜データを変えてもらいたい.

ページの最後に[コード一覧](#コード一覧)があります.

# 解説

色付きの地図を作成するために, [geopandas](http://geopandas.org/) というパッケージを用いる

“`bash
pip install geopandas

Python初心者が「Python文法詳解」を読んだメモ #6

# バックナンバー
– [Python初心者が「Python文法詳解」を読んだメモ #1](https://qiita.com/usayomo/items/7024c619c5f72462cb10)
– [Python初心者が「Python文法詳解」を読んだメモ #2](https://qiita.com/usayomo/items/9c1537678bdde813a273)
– [Python初心者が「Python文法詳解」を読んだメモ #3](https://qiita.com/usayomo/items/57e6156c95e60b3223ca)
– [Python初心者が「Python文法詳解」を読んだメモ #4](https://qiita.com/usayomo/items/01fdb8bbe7704da236bb)
– [Python初心者が「Python文法詳解」を読んだメモ #5](https://qiita.com/usayomo/items/eb2c59b538f5c349bc52)

“`py:Pythonのリストはオブジェクトを参照している
>>> L1

今シンガポールにいますLineBotを作成し、記憶に残る仕事をしたい物語

# 「ごめん、同級会にはいけません」

強烈なインパクトを持つこのCM。
これが大好きなので、同級会に誘うと
「**今、シンガポールにいます**」と
返事を返してくれる**LineBot**を作ってしまいました。
さらに、**ドヤァ感**をよりいっそう高める仕様をいろいろモリこみ、
地図には残らなくても、使った人の**記憶に残る仕事**にしたいと思います!

[クソアプリ Advent Calendar 2019](https://qiita.com/advent-calendar/2019/kuso-app) の4日目です。
~~と、書くまでもなくタイトルから漂うクソアプリ感~~

### 使い方:
 ① **同級会を開く**
 ② **おもむろにLineを立ち上げ「綾乃、いまどこ?」と聞く**
 ③ **「ごめん、同級会にはいけません~~~以下略」と返信が来る**
 ④ **「え、シンガポールだって」という感じでみんなでのぞきこむ**

### 実行した時の様子:
![キャプチャ1.PNG](https://qiita-image-store.s3.ap-northeast-1.

django-ckeditorにコードスニペット機能を追加

django-ckeditorはリッチテキストエディター(多機能な編集機能を持った入力装置?)を提供してくれる便利なライブラリです!

インストール方法は割愛します。(時間があれば別記事で書いてみます!
今回は、ckeditorにコードスニペット(pythonやJSなどのコードをいい感じに表示してくれる機能)を実装する方法をまとめたいと思います。

## Step1. CKEDITOR_CONFIGにプラグインを認識させる。
django-ckeditorの設定をする際に、setting.pyの中に以下のような記述を行っていると思います。

“`python:setting.py
CKEDITOR_CONFIGS = {
‘default’: {
‘height’: 150, # defaultで高さ150pxに固定という意味
‘width’: ‘100%’, # defaultで親要素の幅に固定 ー> 便利です。
},
}

“`

少し、設定をいじっていますがこんな感じになっているはずです。

ここでは自作の設定な

cURL API を Pythonスクリプト に変換する(IBM Cloud オブジェクトストレージを使って)

# cURLでREST-APIの動作確認をしてからPythonに書き直すときの変換パターンをメモ
1. IBM Cloud オブジェクトストレージを使って cURL の動作を確認する。
2. 確認できたcURLをPythonスクリプトで書いて、オブジェクトストレージで検査する。

## その1.認証トークンを取得する
cURLの場合

“`
curl -X “POST” “https://iam.cloud.ibm.com/identity/token” \
-H ‘Accept: application/json’ \
-H ‘Content-Type: application/x-www-form-urlencoded’ \
–data-urlencode “apikey={api-key}” \
–data-urlencode “response_type=cloud_iam” \
–data-urlencode “grant_type=urn:ibm:params:oauth:grant-type:apikey”
“`