質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

722閲覧

PYTHONのブラウザ利用について

naokiscottie

総合スコア11

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/04/21 03:07

編集2021/04/21 05:10

Pythonのブラウザを利用したシステム構築について

Pythonの初心者です。Pythonの基礎とスクレイピングやEXCELの操作など基本は一通り学習しました。
webアプリケーションについては全く分かっていません。

仕事の効率化という観点でPythonを学んでいます。スクレイピングやブラウザの自動操作,EXCELの操作などによって業務を効率化できると考えています。
仕事の中に点検作業があるのですが、簡単なWEBアプリケーションを作って業務効率化できないかと考えています。
1.現場に行く。点検記録をスマホでインターネットの自分が作ったwebサイトに入力
2.現場から帰った後、webサイトに入力している点検の数値をPythonのスクレイピング機能によって、自動で読み取り、EXCELシートに転記して点検結果を自動作成

という機能を考えています。
ここで、点検記録を入力して表示できるようなWEBサイト(本当に簡単なもの)を作ろうと思って、Pythonのウェブアプリケーションについても少し勉強してみようと思いました。

入門書を買って、localhost:8080というサーバを立ち上げて練習をしてみたのですが、実際このサーバって仮のサーバであって、例えば現場でスマホを立ち上げてこのサーバにアクセスしようとしてもローカルネットワーク内にないので繋がらないですよね??

自分はサーバとかのことよく理解していないのですが、きっとサーバを契約してそこにPythonでコード書いてwebサイトを作る必要がありますよね。
この場合、今している勉強って・・・練習としては意味あるけど、多分実用性はないよなって思いました。

この場合は、サーバに契約する必要がありますよね??教えて下さい。
あと、サーバに契約して、Pythonで簡単なサイト(入力欄がいくつかあって、それがweb上に表示されればいいです)作れるのでしょうか?
それとも、flaskとかdjangoどちらかを勉強した方が簡単で効率的でしょうか?教えて下さい。

因みに、今私が勉強している参考書は「実践力を身に着ける Pythonの教科書」のP214からの部分です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K_3578

2021/04/21 03:29 編集

とりあえず、PythonであってPYTHONって言語はないです。 で、結局勉強のために作ろうとしているの?それとも業務の効率化で作ろうとしているの?
naokiscottie

2021/04/21 03:32

そうですね。 修正しました。 ありがとうございます。
K_3578

2021/04/21 03:36

>結局勉強のために作ろうとしているの?それとも業務の効率化で作ろうとしているの? これについてはどうなんです?
naokiscottie

2021/04/21 03:46

半分半分ってところです。 おそらくこのシステム自体なら、普通に作ってる時間の方が時間かかってる気がするので。 ただ、このシステムを含めていろいろ今後プログラミングで作れたらと思っています。 ただ、webアプリに関しては今の自分の実力を考えると深入りするのではなくて最低限学びたいという思いです。
K_3578

2021/04/21 03:55

一応、回答しました。
naokiscottie

2021/04/21 04:06

了解です。ご回答ありがとうございました。誤字すいませんでした。
K_3578

2021/04/21 04:50

もしかしなくてもflackっていうのはflaskの事ですかね
guest

回答3

0

ベストアンサー

仕事の中に点検作業があるのですが、簡単なWEBアプリケーションを作って業務効率化できないかと考えています。

質問を読んだ限りWebアプリケーションよりスマホのアプリケーションを作った方が良い気がしました。
もちろんWebアプリケーションでも可能です。

自分のWebサイトをスクレイピングする必要は無いと思います。
大抵の場合DBに入力するでしょうから、そのDBに直接接続して値を取ってきた方が早いです。
そもそも、Webに入力された時点でExcelを特定の場所に吐き出したり、メール添付で送ったりすればその手順も省けるので仕様検討が必要です。

localhost:8080というサーバを立ち上げて練習をしてみたのですが、

localhostの時点で外部から(公開設定していなければ)見ることはできません。

勉強時点で使っているのは、たいていの場合Django/Flask共に開発用サーバです。
開発サーバは本番運用に使用してはいけないものなので、別の物を考える必要があります。

きっとサーバを契約してそこにPythonでコード書いてwebサイトを作る必要がありますよね。

自宅サーバという手もありますので、「サーバが必要」という意味で「はい」です。
自宅サーバならレンタルサーバより安く運用できる可能性がありますが、すべて(HWもSWも)自分で設定する必要があります。

借りる場合はレンタルサーバー、VPS、クラウドサービスなど色々選べますので調べてみてください。

この場合、今している勉強って・・・練習としては意味あるけど、多分実用性はないよなって思いました。

開発サーバで作るのが「多分実用性はない」とおっしゃっているなら間違いです。少なくとも私はそう思います。
殆どの人は開発サーバで作成しますし、開発サーバで開発しないと効率がすごく落ちます。
本番環境だけで開発できないことも無いですが、凄く手間がかかる割にメリットは少ないです。

開発環境を作成して開発する、本番環境だけで開発するそれぞれにメリット/デメリットがありますが、開発環境を使った方が一般的には良いと思います。

もちろん、開発環境が準備できず本番環境で開発する場合もありますが、今回はPythonを使ったWeb開発ですのであてはまらないと思います。

この場合は、サーバに契約する必要がありますよね??教えて下さい。

Pythonが動作するサーバを契約すれば動作します。
契約する場合は、Django/Flaskを動作させている人がいたり公式ドキュメントがあるかを確認した方が良いと思います。

あと、サーバに契約して、Pythonで簡単なサイト(入力欄がいくつかあって、それがweb上に表示されればいいです)作れるのでしょうか?

開発環境で動作したものは、大抵サーバでも同じように動作します。
開発環境で想定したとおりのものが作成できれば作成可能です。

それとも、flaskとかdjangoどちらかを勉強した方が簡単で効率的でしょうか?教えて下さい。

私の考えではFlask/Djangoを勉強した方が最終的に早いです。
個人的にはFlask押しです。
Flaskは学習時間が比較的短い時点から作り始めることができます。
ただし、Djangoを学んでしまえば全部入りなのであとあと迷わなくて済むかもしれません。

投稿2021/04/23 07:17

FiroProchainezo

総合スコア2424

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K_3578

2021/04/23 07:19

自分の回答より数倍詳しく書かれてるので高評価しました。
naokiscottie

2021/04/23 07:52

詳しく教えて下さりありがとうございます。 flaskの勉強、Pythonの基礎の勉強が終わればやってみようと思います。 ありがとうございました。
guest

0

サーバに契約して、Pythonで簡単なサイト(入力欄がいくつかあって、それがweb上に表示されればいいです)作れるのでしょうか?
それとも、flaskとかdjangoどちらかを勉強した方が簡単で効率的でしょうか?

「本当に簡単なもの」で良いというのであれば、DjangoやFlaskも良いですが、それらPython用フレームワークを使わずともPythonが標準で用意しているCGIのモジュールを使うことで、WEBサーバーとCGIが使えるレンタルサーバーなどで充分利用できるので、候補のひとつに挙げてみてはいかがでしょうか。

CGI (ゲートウェイインターフェース規格) のサポート - Python3.9.x

個人的な意見を含みますが、CGIは古くからある規格ではあるものの、知っておき、使えるようになっておいて損は無いと考えます。CGIであれば個々のフレームワーク特有の使い方に悩まされることも少なくなります。

また、DjangoやFlaskよりもう少し簡単でシンプルなフレームワーク Bottle と言うものもあります。標準のCGIモジュールよりもう少しだけフレームワークっぽくサイトを作りたい場合に良いです。teratailでも少ないものの、たまに質問が挙がります。

Bottle: Python Web Framework

私はテスト用のWEBサーバーやAPIサーバーを作る(≒でっち上げる)ときにこれらを良く利用します。

投稿2021/04/23 08:02

dodox86

総合スコア9256

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

naokiscottie

2021/04/23 08:06

参考になる情報ありがとうございます。
guest

0

まず、大前提としてだが勉強としてやっているものが実用性があるわけない。

ローカルネットワーク内にないので繋がらないですよね??

当然。localhostは自分自身、つまり今使用されているPCの事ですから、別の端末でアクセス出来るわけがない。

サーバに契約する必要がありますよね??

はい。色々なものがありますのでご自分でよく調べて
合うものを選定してください。

Pythonで簡単なサイト(入力欄がいくつかあって、それがweb上に表示されればいいです)作れるのでしょうか?

別にPythonに限らずとも大体の言語で作れます。

それとも、slackとかdjangotoどちらかを勉強した方が簡単で効率的でしょうか?教えて下さい。

以下、質問修正前の回答です。

djangotoなんてものはないのでDjangoと考えます。
DjangoはPythonで実装されたWebアプリケーション用のフレームワークなので、上手く使えれば
効率的に物を作れるでしょうが、その分学習コストが増えますから、しっかり勉強した上で使ってください。

slackはチームコミュニケーションツールなので何の関係もないと思われます。
恐らくFlaskの事だと思いますが、要件次第です。
Flaskの方が軽量ではありますがどちらも、Webアプリケーション用フレームワークなので。
なのでこちらに関しても質問者さんの好みになると思います。

色々要件が定まっていないので、一度まとめて、自分がどのフレームワークを使うのか、サーバは
どれにするのかなどを考えられた方がよろしいかと思います。

投稿2021/04/21 03:54

編集2021/04/21 05:26
K_3578

総合スコア1282

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問