Pythonのお勉強 Part57

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/06/25(月) 09:57:59.24ID:aY7uj4w5
Pythonオフィシャルサイト
http://www.python.org/

■前スレ
Pythonのお勉強 Part56
http://mevius.5ch.net/test/read.cgi/tech/1519430841/

次スレは>>980が挑戦する

ソース貼れるサイト
https://pastebin.com/ ペーストビン
https://ja.osdn.net/pastebin/ OSDNコピペ ログインしないで投稿すると一週間で自動削除
2018/08/12(日) 21:00:04.60ID:6F6W/tUK
てか起動してからファイルを渡すんじゃなくて
> python hello.pyって呼ぶべきなんだよね
>>>←このプロンプトでファイルを呼ぶとそりゃエラーになるわ
2018/08/12(日) 21:20:12.96ID:sFpP4hR5
いや、とりあえず>>313やってみて駄目だったらまた書いてくれってことだと思う
322デフォルトの名無しさん
垢版 |
2018/08/12(日) 22:34:59.16ID:K4yivhs3
MacでATOMはどのみち使い難いからなぁ
2018/08/13(月) 00:00:20.00ID:apzVmg0C
せめて celeron にしてくれ。
2018/08/13(月) 00:55:09.74ID:TNNCsAc6
\は半角¥で代用できるんですよね?出せなくて
2018/08/13(月) 01:02:20.07ID:HrB0RGw5
>>323
まさかとは思うけどギャグで言ってんだよな?
2018/08/13(月) 01:14:24.21ID:qz3pg1Pr
windowsだと\じゃなくて¥じゃないの?
2018/08/13(月) 01:24:23.88ID:lm99Nd9T
ヒント:ASCII配列とJIS配列
2018/08/13(月) 01:29:58.76ID:TNNCsAc6
>>313
cd desktopってやってからトラッグドロップしたらできた!
ビギナーすぎて仕組みはわからないけど多分毎回ファイルがあるところに移動しないとファイルを見つけられないってことなのかな?
ありがとう!
2018/08/13(月) 02:13:43.04ID:aWjwgJVg
「コマンド 引数」

ruby .\a.rb
ruby C:\Users\Owner\Documents\a.rb

上は、カレントディレクトリからの相対パス。
先頭に「.\」を付ける

下は、絶対パス

cd で、カレントディレクトリ・今着目している場所を変えられる。
数十の基本コマンドを知らないと、話にならない
2018/08/13(月) 05:03:21.58ID:TeAe32XI
Winで初心者だったらIDLEで書いてそのままIDLEで走らせろよ
それで用が足りるだろ
2018/08/13(月) 05:21:00.66ID:CQ0/cSAn
vscodeオススメしとく。いろいろ便利になるとおもうよ。
2018/08/13(月) 07:13:28.98ID:PFh1twe3
てかそこで躓くのはエディタとかIDEの問題ではなく
シェルとかコマンドラインの知識が足りないんだからubuntu入れてターミナルに慣れることから始めた方がいい

win10のWSLでもいいのかな?
2018/08/13(月) 07:59:09.15ID:ECHWlVDH
いまだと開発者モードオンにしたら(今でも必要かはよく分からんが)
WindowsアプリストアからLinux Subsystemはよりどりみどりで選べるよ
2018/08/13(月) 15:05:42.16ID:z6+TJcGX
>>324>>326
こっちの専ブラでは \ (おそらくそっちの画面では \ の半角) が ¥ の半角で表示されるので読んでて笑える。
2018/08/13(月) 15:08:19.02ID:z6+TJcGX
>>333
今は開発者モードONにしなくてもできる筈。
2018/08/14(火) 15:58:28.92ID:w7/teWcl
スクレーピングしたデータをDBに保存したい場合ってなんかいいpaasみたいなのある?scrapy動かしてそのままDBに保存できるやつ
337デフォルトの名無しさん
垢版 |
2018/08/14(火) 16:49:39.70ID:wyATYME/
GAE
2018/08/14(火) 17:08:35.47ID:w7/teWcl
>>337
無料枠でいけます?
2018/08/14(火) 18:44:27.46ID:3OkmF3Ne
それはお前がどのくらいデータを収集するのか次第だろ…
2018/08/14(火) 20:21:44.91ID:Wl4cT3iI
世界中のエロ画像よ!俺のHDDに集まれ!
341デフォルトの名無しさん
垢版 |
2018/08/15(水) 02:39:13.27ID:xcMWAh3t
IDLEのダメなところは
行番号が分からないところだよな
342デフォルトの名無しさん
垢版 |
2018/08/15(水) 03:49:50.48ID:BN2igdfy
>>340
なんというパワフルな願望
343デフォルトの名無しさん
垢版 |
2018/08/15(水) 07:53:37.04ID:+LAc8jW9
>>341
行番号付けられんかいのー?
2018/08/15(水) 09:08:02.56ID:d9KZECZI
>>341
vimで良いじゃん。
2018/08/15(水) 13:40:47.10ID:SGNbZPzy
>>341
idleつかうならspyderのほうがいいんじゃない?
2018/08/15(水) 19:50:58.06ID:B6/TbaoC
ちょっと教えてください
GeminiPDAのTermuxUbuntuでPhantomJS使ったスクレイピング試してます。

pythonで対話モード?だとget後のdriver.page_sourceで正常に
ページソースの取得が出来ますけど、
ファイル渡して実行すると下記のような空のHTML?しか返ってきません。

<html><head></head><body></body></html>

googleのTOPで試しましたけど、他のWebページでも同じなようです。
get後にwait入れたりもしてみましたが同じでした。
この場合他にどういった事を試せば良いでしょうか?
スクレイピング勉強始めたばかりでお約束等手探り状態です。
各APバージョンはPython3.6.5とSelenium3.8.0、PhantomJS2.1.1です。
2018/08/15(水) 20:12:34.23ID:ShDcx1x6
googleは止めておいた方が...
すぐアク禁にされるから
不便だよ
2018/08/15(水) 20:26:22.26ID:veEQGj3P
>>347
スクレイピングするとアク禁喰らうのかよ?
迂闊に出来んなぁ
2018/08/15(水) 20:36:03.30ID:Lt9AX4rb
今からWebアプリの開発をPythonで始めたいのですが、どのような開発環境がいいでしょうか?
現状は次の通りです

・3年ほど前から、自宅鯖で自分専用のWebサーバーを運用しています。主な用途は仕事(自営)の実績データ整理です。出先からスマホで入力することが多いので、Webサーバーにしています
・CENTOS6.5+apache2.2+postgresql8.4+PHP5.3で運用しています
・自宅にはサーバー機が1台とデスクトップ機(win10 64bit)が1台あり、LANで繋がっています
・デスクトップ機上のIDE(現在はNetbeans、以前はaptana)でソースを書いて、FTPでサーバー機に転送し、テストはデスクトップ機がLAN経由でサーバー機に接続して行っています

考えられるのは、従来通りの方法か、デスクトップ機上に仮想マシンを作ってIDEもそこに置くか、IDEはwindows上に置いておいて仮想マシンはテスト専用にする、くらいですがそれぞれの長所・短所がよく分かりません

なお、デスクトップ機でlinuxを使った経験はほとんどありません。OSのインストール時に試しにx-windowをちょっと触ったくらいです
2018/08/15(水) 21:17:01.34ID:B6/TbaoC
>>347
1秒に何度も実行するわけでは無いので大丈夫じゃないですかね
でも忠告どおりyahoo等と入れ替えて実施します
UserAgentも変えましょうかね
ありがとう
2018/08/15(水) 21:23:20.51ID:pSIls4/k
>>349
Win10で世界に何かを公開するとかはやめとけ やめとけ やめとけ
素直にレンタルサバ(中身はLinux系)借りとけ
2018/08/15(水) 21:32:14.48ID:PyNbth/v
>>349
自家サーバーにこだわりが無ければ
適当なPaaSを選んで使うのが楽
お遊び程度なら無料枠で充分動く
2018/08/15(水) 21:34:04.83ID:HF637GWT
>>351
鯖はcentosじゃないの?
2018/08/15(水) 21:38:50.36ID:Lt9AX4rb
>>352
サーバーの方に手を入れるつもりはなくて、PHPで作ってたのをPythonに切り替えるにあたって、開発環境をどうしようかって話です

>>353
その通りです
2018/08/15(水) 22:03:51.64ID:pSIls4/k
>>354
Sakuraエディタおk
2018/08/15(水) 22:32:09.76ID:HF637GWT
>>354
開発環境のセットアップはanacondaインストールから始めるといいかも。
エディタはanacondaに入ってるspyderが個人的には好きだけど、pycharmを勧める人も多い。

contosにデフォで入ってるpythonがバージョン3じゃなかったりするので、python -Vでバージョン確認して2.7とかだったら、改めてpythonをインストールしたほうがいいかも。
2018/08/16(木) 01:42:46.33ID:+1zp+zJl
pycharmはweb開発は有料だし、webだと.py 以外のファイルを弄る機会も多いからvscodeの方がいいな
2018/08/16(木) 11:14:34.74ID:EK+Nvgo+
vscode、関数戻り値の型ヒント書くとハイライタのフォントカラーがおかしくなる。
職場のvscodeでは正常なんだが、自宅のwin、macの両方ともダメ。
原因調べるのまんどくさ。
359デフォルトの名無しさん
垢版 |
2018/08/16(木) 11:15:56.47ID:wiNukf+g
>>347
+1
2018/08/16(木) 11:40:18.66ID:UPsIxMpm
スクレイピングして
リストとかディクショナリーとかにデータ入れてプリントすると文字列出てくるけど
これは上書きされてるって事?それとも[a.b.c.d,,,,,, ]ってどんどん増えてくニュアンス?
361デフォルトの名無しさん
垢版 |
2018/08/16(木) 12:05:21.54ID:uNA0ay3k
TabError: inconsistent use of tabs and spaces in indentation
Pythonはこういうエラーを出してくるからいちいち面倒くさい。
強迫神経症になりそう。
362デフォルトの名無しさん
垢版 |
2018/08/16(木) 12:11:57.01ID:wiNukf+g
>>361
めったにみないぞ
2018/08/16(木) 12:34:38.58ID:O4QN+duh
>>346
あーっと自己解決かな?
get後にsleepで何秒か待つとソース取れました。
リダイレクトされたのか裏でなんか起動中なのか確認しようと思って
page_sourceの後current_url取ろうとしたら今度は下記エラー…
〜 Unable to load Atom 'execute_script' 〜

謎は深まった…orz
Seleniumスレあったけど過疎化してるね。ここで良いのかな…
2018/08/16(木) 12:53:02.04ID:plLGYyaN
vscode django remote debug でググると色々出てくる

つーか素のPHPとSQLでゴリゴリ書いてたのか、フレームワーク使ってたのかで大分移植難易度変わると思うけど
元がdb使ってたかわからんが、もし使ってたらdjangoは独自ORマッパーのModelありきだから一から作り直した方が早いと思う
2018/08/16(木) 18:17:49.39ID:uyy9Zvn9
7月発売予定だったDjango本が9月に延期したと思ったら来年1月にまた延期してる
2018/08/16(木) 19:21:00.85ID:XXEsT8PI
>>361
pycharm使わないからそういうエラーで時間を無駄にすることになるんだよ
367デフォルトの名無しさん
垢版 |
2018/08/16(木) 19:26:23.59ID:xTRm/dST
pandasで階層インデックス、MultiIndexのデータ形式に随時行を追加していきたいような時は、appendするよりも、新しいデータでdfを作って、それとマージしたほうがいいのかな?
そもそも、階層インデックスのdfにappendするやり方がわからない...
2018/08/16(木) 21:30:56.14ID:4UFesjQJ
pycharmじゃなくともちょっと気の利いたテキストエディター使えばいいだけだぞ
2018/08/16(木) 21:48:43.86ID:VzTKEac+
>>361
タブでネストの深さ管理してるのにそれを滅茶苦茶にするのが許されるとか致命的だろ
2018/08/16(木) 23:05:08.02ID:7UI9K+jh
エディタはMery使えばええやん?
2018/08/17(金) 01:11:25.23ID:/a+SCakG
>>363
5ch みたいに最初に、空のHTML だけを送ってきて、
その後、JavaScript の非同期処理で、内容を取得するようなページは、

少し待たないと、HTML 内に内容が読み込まれない
2018/08/17(金) 03:23:30.29ID:9KA4EaP8
>>371
やっぱそうなのか〜
自分はsleepで待機したけど、seleniumの作法としては
タイトル要素待つとかなのかな?
先は長いな

ちなみにUnable load Atomはパッケージが元々壊れてる可能性
あるとかでphantomjs入れ直す予定。
npmのリポジトリにも見つけたからaptのは削除してやってみます
373デフォルトの名無しさん
垢版 |
2018/08/17(金) 22:26:46.76ID:u2pvgFH0
condaについて調べてて、グーグル先生に翻訳してもらったら
conda package がコンドームパッケージって翻訳されて会社で笑いそうになった
2018/08/17(金) 23:10:09.90ID:XabtsNLS
小…いや中学生レベルか
375デフォルトの名無しさん
垢版 |
2018/08/17(金) 23:33:29.96ID:7hC1UKUq
重いcondaら
376371
垢版 |
2018/08/18(土) 00:21:07.11ID:K3y6E3T8
>>372
phantomjs は、もう開発終了だろ。
Selenium WebDriver から、Chrome で、headless mode を使える

Ruby では、
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless')

driver = Selenium::WebDriver.for :chrome, options: options

また、特定の要素が作られるまで、wait するような書き方もある
377デフォルトの名無しさん
垢版 |
2018/08/18(土) 11:20:06.71ID:TgZCKLMK
>>373
乙py
2018/08/18(土) 12:57:53.83ID:AoejqNo/
sjisではないファイル名をリストアップしようと思って、
try:
file_sjis = file.encode("sjis")
except UnicodeEncodeError:
print file.encode("utf-8")

こんな風に書いたら、'〜' を含むファイル名までエラーになった
実際には普通のsjisなのに

これはpythonがおかしいの?
2018/08/18(土) 13:04:53.14ID:AoejqNo/
自決しました
sjisではなくCP932が正解

同じちゃうんかい
2018/08/18(土) 13:09:37.55ID:+D6q4itd
>>376
最初はChromeやChormium、Firefoxも試したんですけどねぇ
driver = webdriver.Firefox()等でインスタンス正常に返してくれるのが
PhantomJSだけだったんですよ
Termux上っていうちょっと特殊な環境だから仕方ないかなと。

wait.until(expected_conditions.~)で待ちを作れるのは一昨日覚えました。
rubyも良いよね10年前にirbちょっと触った記憶しか無いけどw
あ〜rubyからも試してみようかな
2018/08/18(土) 16:42:28.63ID:kW1ysljP
>>379
まてはやまるな
382デフォルトの名無しさん
垢版 |
2018/08/18(土) 18:54:08.43ID:IyhzoKxX
>>379
ちゃうちゃう
2018/08/18(土) 23:42:54.01ID:rgG2347N
CP932 は、sjis に、MS 固有の文字(機種依存文字)を追加したもの
2018/08/19(日) 00:01:25.04ID:N6ypVYZd
それだけなら上位互換だねーで済むので、
>>378 みたいな問題は起きない
2018/08/19(日) 07:28:29.56ID:D+JT35N2
ついに死人が出たか
2018/08/19(日) 12:08:18.61ID:6FVC4Qsx
>>379
イ`!
2018/08/22(水) 02:48:25.72ID:5vGBawXp
いつのまにか基礎から学ぶdjangoの発売日が7月から来年の1月に変わってる…
2018/08/22(水) 08:31:41.05ID:xo06dllX
今は売るな 時期が悪い
389デフォルトの名無しさん
垢版 |
2018/08/22(水) 13:47:08.81ID:Q4k/bgn4
うむ
2018/08/22(水) 15:44:49.94ID:4bStgRD4
>>388
詳しく
391デフォルトの名無しさん
垢版 |
2018/08/22(水) 23:41:13.50ID:CUpP3eQX
今は時期が悪いオジサンの戯言はスルーで
2018/08/23(木) 00:23:03.83ID:7EATF+TJ
今日買ったオライリー本の中で、RubyのRailsとPythonのDjangoが二大フレームワークとして挙げられてたんだが、Djangoって海外じゃRailsとタメ張れるくらいそんなにメジャーなの?
だったらDjango本バンバン出して欲しいんだが
2018/08/23(木) 00:43:07.48ID:QSAlag1p
herokuの無料プランにdjangoとか突っ込んだらそれだけで無料プランの容量かなり埋まっちゃうと思うけどpython以外のwebフレームワークでも同じぐらい容量食うの?
2018/08/23(木) 00:50:06.96ID:qUZ5eK5Q
これが初めて出た、Django の本!

Python Django 超入門、掌田津耶乃、2018

一方、Rails の本は、数十冊は出てる
2018/08/23(木) 06:04:22.36ID:jMRKOB1p
reCAPTCHA の画像ポチポチ押していくやつって突破できるの?
2018/08/23(木) 06:09:00.21ID:NPcuqlt3
出来ないとしたら、お前はロボット
または目が見えない
または英語を理解できていない
397デフォルトの名無しさん
垢版 |
2018/08/23(木) 10:31:44.06ID:29gBK1aD
>>394
数十冊出さないと理解出来ないくらい複雑怪奇魑魅魍魎なRailsより
入門書なんかなくても学習出来るDjangoの方が良いと思わないか?
398デフォルトの名無しさん
垢版 |
2018/08/23(木) 10:33:38.14ID:29gBK1aD
>>396
人間でも突破は馬鹿には無理だから
ガキ除け馬鹿除けには良いね
399デフォルトの名無しさん
垢版 |
2018/08/23(木) 10:57:47.11ID:ek31ThJm
【中庸はNG、右か左】 世界教師マ@トレーヤ「新時代を切開くため70億人を2つのグループに分ける」
http://rosie.5ch.net/test/read.cgi/liveplus/1534987219/l50

PCとスマホのモニターを覗いている傍観者のみなさん、腹を決めてください。
2018/08/23(木) 11:37:09.50ID:4kav5HXR
ずっとピストンって読んでた。すいません。
2018/08/23(木) 11:47:47.04ID:NPcuqlt3
>>397
良い本なら一冊で大丈夫だ
しかしもう今はやる気は失せた
2018/08/23(木) 11:50:15.65ID:NPcuqlt3
>>400
👍
2018/08/23(木) 13:06:39.15ID:klzF2omV
>>394
こいつまた公式パクって改悪してわかりにくい
解説つけただけの本出したのかw
2018/08/23(木) 15:49:00.01ID:NPcuqlt3
日本ってそういうの多いよね
悲しい
2018/08/23(木) 18:44:53.55ID:6xdW/97z
PyPyもあるしな
2018/08/23(木) 20:45:28.36ID:M079BOOd
>>405
これはパイパイって読むの?
2018/08/23(木) 21:44:29.43ID:rF1VcRiN
>>406
パイパイ以外の読み方を知らない
2018/08/23(木) 22:03:56.56ID:Nb1kUYAy
職場では発音しづらい
2018/08/23(木) 23:01:02.17ID:d2HknYhk
classmethodの使い道ってコンストラクタいがいにあります?
2018/08/23(木) 23:03:25.34ID:wSu9Jxc9
>>409
ない
Pythonの場合はインスタンスに属さない関数はモジュール直下に置くのが好まれる
2018/08/23(木) 23:13:28.73ID:d2HknYhk
>>410
やっぱそすか
クラス自体を引数に取ってもやることはインスタンス作るくらいですよね
412デフォルトの名無しさん
垢版 |
2018/08/24(金) 12:46:32.55ID:ZVlysGry
例外言い出したらキリがないけど
メタプログラミングとか黒魔術とかのときは使うんじゃね
2018/08/24(金) 14:51:57.34ID:ZgK6e0Tb
世界中で、主要言語のフレームワーク、ゲームエンジンの本を書いたのは、掌田だけ!

Guido の本は、もっとひどい。
詳細は検索して! ばっかりw
内容がないw

内包表記は読みにくいから、使わない方がよいとか
414デフォルトの名無しさん
垢版 |
2018/08/26(日) 11:30:34.82ID:ylpyaNXE
>>394
著作者はApple Script入門書書いた超有名人じゃないっすか
415デフォルトの名無しさん
垢版 |
2018/08/26(日) 11:41:27.22ID:aC0UXwdj
>>412
ほんとに要らないのは、staticmethodの方だな。
2018/08/26(日) 12:15:14.63ID:aCtSO5pR
>>414
掌田津耶乃は悪い方で有名
417デフォルトの名無しさん
垢版 |
2018/08/26(日) 13:39:48.52ID:2ZbuD4Bs
staticmethodは便利
classmethodも使う
一番要らないのはC++のprivate
2018/08/26(日) 13:47:21.50ID:oFGqb4Dq
掌田津耶乃って入門書ビジネスやってるだけのチテショウだろ…
419デフォルトの名無しさん
垢版 |
2018/08/26(日) 18:08:17.97ID:uzRyUz20
classmethodは、クラスレベルのアトリビュートにアクセスできるから、ファクトリ専用というわけではないw
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況