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

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

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

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

selenium

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

Q&A

0回答

2369閲覧

Microsoft teamsをseleniumを使って操作したい

butsuli_shine

総合スコア29

Python

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

selenium

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

0グッド

0クリップ

投稿2020/08/30 09:46

前提・実現したいこと

MicrosoftTeamsをsleniumで動かしたいのですが、webアプリ版のTeamsがうまく動かなくて困っています。

発生している問題・エラーメッセージ

Traceback (most recent call last): File "E:/Auto_point_call/selenium_try.py", line 40, in <module> elem = driver.find_element_by_xpath('//*[@id="favorite-teams-panel"]/div/div[1]/div[14]/div[2]/div/ng-include/div') File "C:\Users\luluc\AppData\Local\Programs\Python\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath return self.find_element(by=By.XPATH, value=xpath) File "C:\Users\luluc\AppData\Local\Programs\Python\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 976, in find_element return self.execute(Command.FIND_ELEMENT, { File "C:\Users\luluc\AppData\Local\Programs\Python\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute self.error_handler.check_response(response) File "C:\Users\luluc\AppData\Local\Programs\Python\Python38-32\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="favorite-teams-panel"]/div/div[1]/div[14]/div[2]/div/ng-include/div"} (Session info: chrome=85.0.4183.83)

該当のソースコード

python

1from selenium import webdriver 2from time import sleep 3driver_path = '.\chromedriver.exe' 4 5driver = webdriver.Chrome(executable_path=driver_path) 6 7 8url = 'https://login.microsoftonline.com/common/oauth2/authorize?response_type=id_token&client_id=5e3ce6c0-2b1f-4285-8d4b-75ee78787346&redirect_uri=https%3A%2F%2Fteams.microsoft.com%2Fgo&state=4a7fd080-ac78-4361-8e4d-284f80ccf499&client-request-id=48a89a77-e025-4b45-9b32-21d1b4d41514&x-client-SKU=Js&x-client-Ver=1.0.9&nonce=a6988c59-e2cd-4fcb-a3e3-0b25242797af&domain_hint=&sso_reload=true' 9driver.get(url) 10# ログイン 11# id入力 12elem = driver.find_element_by_id('i0116') 13elem.clear() 14elem.send_keys('メールアドレス') 15 16elem = driver.find_element_by_id('idSIButton9') 17elem.click() 18 19elem = driver.find_element_by_id('i0118') 20elem.send_keys('パスワード') 21# ロードされるのを待つ 22sleep(4) 23elem = driver.find_element_by_id('idSIButton9') 24elem.click() 25 26# ロードされるのを待つ 27sleep(2) 28elem = driver.find_element_by_id('idSIButton9') 29elem.click() 30 31# 代わりにwebアプリを使用する 32elem = driver.find_element_by_xpath('//*[@id="download-desktop-page"]/div/a') 33elem.click() 34 35# チームのクリック 36sleep(5) 37elem = driver.find_element_by_xpath('//*[@id="favorite-teams-panel"]/div/div[1]/div[14]/div[2]/div/ng-include/div') 38elem.click() 39

試したこと

ログイン画面からteamsのホーム画面までは行けたのですがそのあとチームをクリックしようとするとエラーが出ます。

補足情報(FW/ツールのバージョンなど)

チームのカードのXPATHはあってるはずです。
![チームのカード
イメージ説明

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

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

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

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

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

kuma_kuma_

2020/09/21 20:54

teamsのホーム画面のHTMLを掲載してください 一部ですとxPathが正しいかわかりません。 あとseleniumのfind_element_by_xpathは挙動がおかしいときがあります。 len(elem) != 0 でエレメントが取得できているか確認ができますので デバッグしてみて下さい。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問