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

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

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

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

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

6082閲覧

pythonのseleniumで作ったプログラムが途中で停止してしまう

退会済みユーザー

退会済みユーザー

総合スコア0

Python

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

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/03/15 08:11

編集2018/03/19 09:11

seleniumでweb操作の自動化をしようとしております。
webページ上のボタンをクリックしたいのですが要素を特定できないためプログラムの動作が途中で停止してしまいます。
htmlの知識が少ないためsilk driverを利用しておりますがsilk driveのコード通りにやってもうまく要素を特定できないため質問させていただきます。
プログラミング初心者とゆうこともあり問題解決に必要な情報が足りていないかもしれないですがその際はコメントいただけたらと思います。

#windows10
#python3.6

webページ上のボタンをクリックしたいです。
ボタンにはサーバー作成と書いておりクリックするとポップアップで元のページ上に新たな画面が表示されます。
元の画面のURL https://console.cloud.nifty.com/web#computing/instance
新たな画面がポップアップされたページのURL https://console.cloud.nifty.com/web#computing/instance/create

<a class="btn btn-create" href="#computing/instance/create"><i class="fa fa-plus-circle fa-lg"></i>サーバー作成</a>

試したこと

1.browse.find_element_by_link_text("サーバー作成").click()
2.browser.get("https://console.cloud.nifty.com/web#computing/instance/create")

直接ポップアップ表示された画面を表示しようとしましたが表示できないです。

エラーメッセージ
selenium.common.exceptions.NoSuchWindowException: Message: no such window: target window already closed
from unknown error: web view not found
(Session info: chrome=64.0.3282.186)
(Driver info: chromedriver=2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73),platform=Windows NT 10.0.16299 x86_64)

怪しい原因など分かる方おりましたらご教示ください。よろしくお願い致します。

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

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

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

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

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

guest

回答2

0

ベストアンサー

エラーメッセージからは、恐らくウィンドウハンドルの切り替え等に失敗しているのであろうとは思いますが、残念ながら Selenium 等によるスクレイピングやブラウジング自動化のトラブルは原因の多くがサイト固有の特徴に依るため、 実際のサイト HTML 及びその挙動と実際に使っている操作コード が無ければ、なかなかこれ以上のエラーの原因については分からないと思います。 Silk WebDriver のようなツールも、あくまで 「十分な知識がある人間が仕事を楽にするツール」 ですから、トラブルの発生とその解決はある程度、自らの知識で行う必要があります。どうしてもブラウジング自動化で実現したい要件なのであれば、やはりその原因を追求できる程度には、ウェブサイトの作り等について学ばれる必要があるかと存じます。特に、今回のような認証が必要なサイトの場合、こういった質問に必要な情報をきちんと詰め込む事の方が、寧ろ大変なのではないでしょうか。

ただ今回は、御呈示の URL を拝見するに、恐らくは ニフクラ 上に新しいサーバーを作成するのが要件という認識で宜しいでしょうか。もしそうなのであれば、 サーバー等の各リソースを操作する REST API が公式に用意されていますので、そちらを用いた方が簡単かつ確実 かと存じます。勿論、ウェブサービスという広い範囲でいえば、こういった API を持っている例のほうが少ないでしょうが、幸いにクラウドプロバイダという領域では大抵がこのような API を用意しており、プログラムによる自動操作が簡単に出来るようになっています。 API はプログラム向けに作られた仕組みであるため、ブラウジング自動化よりも 素直に動作し、動かないときは何が悪いかもはっきりしやすい ですから、まずはこれを使って試してみることをお勧め致します。

残念ながら SDK としては Java しか提供されていない (GitHub 上には Ruby もあるっぽい) のですが、 Python の場合は AWS 互換であるため botocore が使える そうなので、 Python でもそこまで苦労はしないと思われます。是非御検討下さい。

投稿2018/03/24 12:04

argparse

総合スコア1017

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

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

退会済みユーザー

退会済みユーザー

2018/03/27 17:37

大変丁寧な回答感謝します。 今後を考えるとやはりwebサイトの作りを勉強したほうがいいと思いました。時間はかかるかも知れませんが取り組んでみます。 APIでいじれるサービスなんてあるんですね。大変貴重なお話ありがとうございます。こちらも試してみようと思います。 貴重な時間を使って解答していただいたことに感謝申し上げます。また何かありましたらご助力いただけたら幸いです。
guest

0

大変丁寧な回答感謝します。

今後を考えるとやはりwebサイトの作りを勉強したほうがいいと思いました。時間はかかるかも知れませんが取り組んでみます。

APIでいじれるサービスなんてあるんですね。大変貴重なお話ありがとうございます。こちらも試してみようと思います。

貴重な時間を使って解答していただいたことに感謝申し上げます。また何かありましたらご助力いただけたら幸いです。

投稿2018/03/27 17:36

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問