ラベル Python/環境構築 の投稿を表示しています。 すべての投稿を表示
ラベル Python/環境構築 の投稿を表示しています。 すべての投稿を表示

2018-01-13

Ubutnu PythonでChromedriverがインストールできないときの対処法

Ubutnu PythonでChromedriverがインストールできないときの対処法のメモ。
結論から言うと、最新バージョンのChromedriver入れれば治る。


selenium.common.exceptions.SessionNotCreatedException: Message: session not created exception chromedriver

とか

selenium.common.exceptions.WebDriverException: Message: unknown error: missing or invalid 'entry.level'

とか、だいたいChromedriverのバージョンの問題らしいですぜ。







普通にChromedriver Ubuntuみたいに調べると、過去のQiitaの記事とかが上位に出るので、Chromedriver latestとかで調べるとよさそう。
































2017-11-13

【Python】Windows Subsystem for LinuxでSelenium環境を整える

前回の記事では、Windows10にWindows Subsystem for Linuxの機能を使い、Ubuntu上でPython環境を構築しました。


Windows Subsystem for LinuxでUbuntu環境を構築し、Python環境を整える

Bash on WindowsからUbuntu環境を構築し、Python環境を整えてみた Windows Subsystem for Linux(Bash on Windows)により、Windows内でUbuntuを動かし、Bashシェルを使えるようになりました。 Windowsのコマンドプロンプトでたたくシェルは、cmd.exeというそうです。

今回は一歩進んで、Windows Subsystem for LinuxでSelenium環境をセットアップする方法を解説します。


うまくいくと、Seleniumを動かせるようになります。以下の画像では、Chromiumが起動させることができています。



2017-11-12

Windows Subsystem for LinuxでUbuntu環境を構築し、Python環境を整える

Bash on WindowsからUbuntu環境を構築し、Python環境を整えてみた



Windows Subsystem for Linux(Bash on Windows)により、Windows内でUbuntuを動かし、Bashシェルを使えるようになりました。


Windowsのコマンドプロンプトでたたくシェルは、cmd.exeというそうです。これをコマンドプロンプト上で、bashシェルを使えるようになります。


今回はWindows内にBash on Windowsを利用して、ubuntuを利用できるようにする方法をまとめてみました。


ちなみになぜBash on Windowsを利用してPython環境を構築したかというと、

  • Virtual BoxからUbuntu入れるのが重そうで面倒くさかった
  • Anacondaも個人的に使い勝手が悪かった

からです。




ちなみにセットアップまでの時間が5分ほどで、かなり楽ちんにPythonをUbuntu環境上に置くことができたので、とてもよかったです。


うまくいくと、コマンドライン上でbashを動かせるようになります。



それでは導入マニュアルをどうぞ。


2017-10-06

Pythonの環境構築でもう悩まない!初心者でも絶対にできるクラウドを使った環境構築方法!


Pythonの環境構築がだれでも簡単にできるようになる方法



Python初心者が必ずぶち当たる壁があります。環境構築です。ある言語を動かすための環境設定する作業が環境構築なのですが、これが実は初心者にとって本当に難しいです。


僕は、3年前にPHPフレームワークLaravelで環境構築の壁にぶち当たり、2年間プログラミングアレルギーになってしまいました。しかし、1年前に、ある方法を使って「環境構築せずに」RubyフレームワークのRuby on Railsに手を出したところ、かなりハマりました。


中級者でも、環境構築でつまづくことも多々あります。それなのに、せっかくのデータサイエンスブームで、Pythonを触ってみたいという人が増えているのにもかかわらず、多くの人が「環境構築の壁」を超えられないのは、勿体無いと思います。


そこで、今回は、一切環境構築せずに、完全無料でPythonを動かす方法を解説したいと思います。


2017-09-24

スクレイピングをPythonでするときは、Cloud9・Selenium・Herokuで決まり!誰でもできるスクレイピングマニュアル



こんにちは、DAIです。


さて、Pythonでスクレイピングする際に必要になってくるSelenium。そしてこのスクレイピングプログラムを定期実行したい。これをCloud9上で実行したい人も多いのではないでしょうか。


昨日、久しぶりにCloud9上でSeleniumの環境構築を行ったのですが、どうも毎回調べてはエラーを繰り返して・・・・という感じだったので、一回Cloud9上でSeleniumの環境構築し、ディプロイするまでをまとめておきたいと思います。だれでも5分以内に同じ動作で、Cloud9上でSeleniumが利用できる環境をセットアップできることを目指します。

#対象者


・HTML/CSS/Javascript/jQuery/Git/Python基礎を学習したことがある人(そうでない人は、Pythonでスクレイピングとか、Slack自動更新とかやってみたい人が学ぶべき5つの言語を参照してから、また挑戦してみてください)


#TODO

  1. Cloud9でPython環境のセットアップ
    1. Cloud9アカウントの作成とPython環境のセットアップ
  2. Python2から3へのバージョンアップ
    1. $ sudo mv /usr/bin/python /usr/bin/python2
    2. $ sudo ln -s /usr/bin/python3 /usr/bin/python
    3. $ python --version
  3. Githubに登録し、新しいレポジトリの作成
  4. Bottleのインストールとサンプルプログラムの実行
    1. sudo pip install bottle
    2. すべてのファイルの削除
  5. Herokuアカウントの作成とログイン
  6. requirement.txtの作成と編集
    1. pip freeze | grep bottle > requirements.txt 
    2. echo web: python app.py > Procfile 
    3. echo "python-3.6.2" > runtime.txt
  7. Herokuにディプロイし起動
    1. git init 
    2. git add .
    3. git commit -am 'initial commit'
    4. git remote add origin git@github.com:[username]/[gitname].git
    5. git push origin master
    6. heroku login
    7. heroku create [herokuName]
    8. git push heroku master 
    9. xxx.herokuapp.com/hello/へアクセス
  8. Seleniumのインストール
    1. sudo pip install selenium
    2. requirement.txtにselenium==2.45.0
  9. サンプルコードの作成+コードのプッシュ
    1. seleniumTest.pyを作成
    2. コードのコピペ
    3. git add .
    4. git commit -am 'added'
    5. git push heroku master
  10. HerokuにPhantomJSのセットアップと、パスの設定
    1. heroku buildpacks:add --index 1 https://github.com/stomita/heroku-buildpack-phantomjs
    2. git push heroku master
  11. 稼働テスト:グーグルのタイトルを表示してみる
    1. heroku run python seleniumTest.py
  12. 定期実行プログラムを組む
    1. heroku addons:create scheduler:standard
    2. heroku addons:open scheduler
    3. 実行コマンドと実行間隔を設定


2017-09-09

『Pythonによるスクレイピング&機械学習 開発テクニック』レビュー

『Pythonによるスクレイピング&機械学習 開発テクニック』を読了しました。



Pythonによるスクレイピング&機械学習 開発テクニック BeautifulSoup,scikit-learn,TensorFlowを使ってみよう』について、レビューします。


Amazonの紹介によると

機械学習の重要性は、日々高まっているものの、いったいどのように実務に取り入れたら良いのかという声を聞くようになりました。
本書では、実際にデータの集め方から、機械学習を活用するところまで、実践的なPythonのサ ンプルコードで紹介します。

と書いてありました。Pythonを利用して、データを集めて整理するところから始められる参考書はなかなかなかったので、これは!と思い『Pythonによるスクレイピング&機械学習 開発テクニック』を購入しました。実際に買ってみて試したうえでレビューしていきたいと思います。




目次


  • 買った経緯
  • こんな人におすすめ
  • 本の内容
  • できるようになったところ

買った経緯


私はもともと趣味でエクセルを使って、教育のオープンデータ分析をしていたのですが、どうしてもHTMLからデータを取ってくるのが面倒で、調べてみるとスクレイピングという技術を使えばわりとできそうだとわかりました。スクレイピングについてはこちら



「Webスクレイピングとは何ぞや?」という疑問が浮かんできたので調べてみた。 - おしい県でWebに携わって働く人のブログ

最近よく聞く、、、わけではありませんが、なんとなく自分の中で「Webスクレイピング」について知りたくなったので、ググったりして調べてみました。



調べてみるとデータを扱ったり機械学習に関してはPythonをよく使うみたいで、ちょうど両方扱っているみたいなので、購入しました。


ちなみにこの本を購入した時点では、ノンプログラマではありません(*HTML、CSS,
JS、jQuery、Rubyを1年学習済み)でしたが、Pythonは書いたことがありませんでしたので、ProgateのPythonコースと、ドットインストールのPythonコースを全部学んで、キャッチアップしてからスタートしました。

Progate(プロゲート) | Learn to code, learn to be creative.

Progateはオンラインでプログラミングを学べるサービスです。プログラミングを学んでWEBアプリケーションを作ろう。


Python 3入門 (全31回)

データ解析や機械学習などにも利用される、シンプルなオブジェクト指向型言語であるPythonについて見ていきます。

こんな人におすすめ


上記に書いたような、データサイエンス・機械学習に興味があるような人や、Pythonを使って何かやってみたいという人にはおすすめです。実際まったくの初心者でも、コードを移していくとスクレイピングできるコードを自分で作ったりできるようになります。


ただし、全くのプログラミング初心者では難しいので、基本的なHTML、CSS、Javascript、jQueryが理解できる程度の知識が必要です


というのも、どうしてもスクレイピングを利用するとなると、HTMLの力が知識が前提となってしまうからです。それを操作するCSS、Jsの知識は必要となります。無料でできるので、さきほどのProgateやドットインストールでキャッチアップしましょう。


また、僕のように機械学習エンジニアに興味があるくらいのレベルであれば、実際にコードを書いて学ぶことができるのでおすすめですが、機械学習はマシンのスペックゲーになることが多かったので、機械学習をちゃんとやりたい場合はちゃんとしたマシンを用意しないとだめですね。僕はノートパソコンで試したら死亡しました。


本の内容



目次はこんな内容となっています。(一部省略)


  1. クローリングとスクレイピング
    1. データのダウンロード
    2. Beautiful Soupでスクレイピング
    3. CSSセレクタについて
    4. リンク先をまるごとダウンロード
  2. 高度なスクレイピング
    1. ログインが必要なサイトからダウンロード
    2. ブラウザを経由したスクレイピング
    3. スクレイピング道場
    4. Web APIからのデータ取得
    5. Cronと定期実行なクローリング
  3. データソースと書式・設定
    1. テキストデータとバイナリデータ
    2. XMLの解析
    3. JSONの解析
    4. YAMLを解析する
    5. データベースについて
  4. 機械学習
    1. 機械学習とは
    2. 機械学習のはじめの一歩
    3. 画像の文字認識
    4. 外国語文書の判定
    5. サポートベクターマシンとは
    6. ランダムフォレストとは
    7. データの検証方法について
  5. 深層学習に挑戦してみよう
    1. 深層学習とは何か
    2. TensorFlowのインストール
    3. JupyterNoteBookのすすめ
    4. TensorFlowの基本をおさえよう
    5. TensorBoardで可視化しよう
    6. TensorFlowで深層学習に進もう
    7. Karasでもっとらくに深層学習をしよう
  6. テキスト解析とチャットボットの作成
    1. 日本語解析(形態素解析)について
    2. Words2Vecで文章をベクトル変換しよう
    3. ベイズの定理でテキストを分類しよう
    4. MLPでテキスト分類しよう
    5. 文書の類似度をn-gramで調べよう
    6. マルコフ連鎖やLSTMで文書を作成しよう
    7. チャットボットの作成
  7. 深層学習を実践してみよう
    1. 類似画像の検出をしよう
    2. CNNでCaltech101の画像分類をしよう
    3. 牛丼屋のメニューを画像判定しよう
    4. OPEN CVで顔認識
    5. 画像OCR・連続文字認識に挑戦しよう
  8. APPENDIX 作業の準備と環境構築
    1. Dockerで環境構築しよう
    2. Python + Anacondaで環境を整える


Pythonの環境構築から、スクレイピング、データの操作、APIの利用、機械学習等データサイエンスの基礎部分に関する内容が、ソースコードとともにかなり丁寧に解説されています。Amazonの本の紹介でもあった通り、Web上のデータをスクレイピングし、データベースに格納、必要なデータを機械学習でコーディングするという一連の作業がこの本を通して学べたと思います。


また、Python初心者も想定して、親切にもWindows、Mac両方で環境構築の説明ランがあります。WindowsとMacの両方の環境構築方法が記述してあります。なので、初心者でも十分進められると思います。最悪環境構築につまったら、Cloud9というWeb上で環境構築を行えるプラットフォームを利用すればなんとかなります。

たった3分で?!初心者向けPython開発環境構築3ステップ | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト

こんにちは!インストラクターの井上(@InoIno_iesa )です。 Python学習したい!そう思っても プログラミングを始めるところにすらたどり着けない という方もいらっしゃるかと思います。 実際、プログラミングの「環境構築」は中級者でも数時間・数日はまってしまう可能性のあるものです。 しかし、そんな 環境構築を一瞬で終わらせる方法 があります! ...


できるようになったこと、この本の知識を活かして試したこと


この本を使ってできるようになったこととしては、seleniumを利用した基礎的なスクレイピングと、APIの利用、pandasとsqliteを利用してデータベースをいじり、matliolibやnumpyでグラフ描写する力、cronを利用してスクレイピングを自動で定期実行などですね。


実際に試したこととしては、TinderのAPIをPython上で利用して、Facebook上の既婚者が利用していないか調べたり、そういう情報をデータベースに格納したりとか....

PythonでTinderのAPIをいじる

PythonでTinderのAPIを利用する TinderにはAPIがあるそうなので、さっそく利用してみた。 PythonはCloud9というクラウドで環境構築してある。 TinderのAPIを使うために必要なのはFacebookのアクセストークンと、Pynderというモジュール。 Pynderを準備 pythonでapiをいじるためのpynderをinstall $ sudo pip install pynder インストールされたみたい。 インストールされたか確認 apiいじるコードをgithubからコピペする https://github.com/charliewolf/pynder import pynder session = pynder.Session(facebook_id, facebook_auth_token) session.matches() # get users you have already been matched with session.update_location(LAT, LON) # updates latitude and longitude for your profile session.profile # your profile.


PythonでTinder APIを使ってネトストとサイバーナンパ師やってみた

Python TinderのAPI Pynderを利用する こんにちは。突然ですが、ナンパしたい。僕は陰キャラなので、歌舞伎町でナンパに繰り出すことなんてできない。 そういえば前回、 PythonでTinderのAPIをいじる で書いた通り、PythonでTinderのAPIをいじれた。原理的には自分のアカウントのFacebook access ...

pythonでsqlite3を利用してデータを挿入する

受験・教育学、心理学、社会学、プログラミング・書評とかで記事書いてます。


Cloud9上で実装したPythonスクリプトをHerokuにディプロイしてして定期実行する手段を生み出したり...


【Pythonで定期処理】 Cloud9を利用して、Seleniumでherokuから定期実行する

Python Cloud9を利用して、定期処理をherokuから行う Cloud9というIDEを利用して、PythonからSeleniumを利用し、あるサイトでいいねを自動化するプログラムを作った。 これを定期実行を行いたい。検索してみると、crontabを使えば定期実行ができるようだが、cloud9上では実行できないらしい。 ほかの代替案を考えたとき、 heroku ...


定期実行プログラムをかけるようになったから、Twitterのフォロワーを自動いいねしたりするプログラムを書いたり


【Python twitter】tweepyを利用してlike、follow、removeを実装したbotを作る

なぜやるか ・ブロガーをやっているので、自分のファンになってくれる可能性があるユーザーをフォローしたい。 ・そのユーザーのコメントにいいねして、後で見返したい。フォローしてきたスパムアカウントはりむーぶしたい。 ・毎日自分の手でやるのは社会人になってしまったので時間がない。ということで自動化したい。 - python 3 - Cloud9を利用 - すでにherokuにpythonプロジェクトをdeploy済みです。 deployまでは下の記事を参考にしてください! やりたいこと 0. とりあえずtwitter apiを使ってログインしてみる 1. それぞれのユーザー名を取得し、そのユーザーのコメントにいいねとフォローを行う 2. 自分のタイムラインからツイートを10つ取得し、上から下までいいねを行う 3.フォロワー数が100未満のユーザーはすべてりむーぶする 4. heroku schedulerを利用して、上記の機能を定期処理で自動化する 0. pythonのtwitter apiであるtweepyを利用してログインしてみる APIを利用して、ツイッターからの情報とるためには、最初に情報を準備しておかなければならない。詳しいことはこの記事に書いてあるので、参照してほしい。 # Tweepyライブラリをインポート import tweepy # 各種キーをセット CONSUMER_KEY = 'xxxxxxxx' CONSUMER_SECRET = 'xxxxxxxx' ACCESS_TOKEN = 'xxxxxxxx' ACCESS_SECRET = 'xxxxxxxx' auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET) #APIインスタンスを作成 api = tweepy.API(auth) PythonでTwitterを使う 〜Tweepyの紹介〜 http://kivantium.hateblo.jp/entry/2015/01/03/000225 Tweepyでpythonについて呟いたアカウントをフォローしまくってみた - 駆け出し眼鏡のプログラミング道場 http://taikomegane.hatenablog.jp/entry/2017/07/08/151110 1.


わりとやりたいことができるようになった感じですね。


アマゾンで最近見たら書店より少し安くなっていたので、

  • Pythonに興味がある
  • データサイエンスに興味がある
  • しかもなんか意味あることを実践的にやりたい
という人のは強くおすすめします!


Pythonによるスクレイピング&機械学習 開発テクニック BeautifulSoup,scikit-learn,TensorFlowを使ってみよう
クジラ飛行机
ソシム
売り上げランキング: 13,688

注目の投稿

めちゃくちゃ久しぶりにこのブログ書いたw 更新3年ぶりw > 多様性というゲームは尊厳と自由を勝ち取るゲームなのかもしれないな。  もともとツイッターでツイートした内容なんだけど、ちょっと深ぼる。 ----- 自分は男 x 30代x 二児の父 x 経営者 x 都心(共働き世...