セレン要求ライブラリ
1.セレンは何ですか?
オープニングは、ブラウザの駆動原理で、自動テストツールである
いくつかの明確な良い操作を実行します。爬虫類は基本的にアナログのブラウザで、
あなたは爬虫類のためにそれを使用することができます
。2.なぜ私はセレンを使用する必要がありますか?
利点:
- jsのコードの実行
-複雑な通信プロセスを分析する必要はありませんが
-ポップブラウザは他の操作をドロップダウンでください
動的データを取得**** -
- ****亀裂のログイン認証
短所:
-非効率的!だから我々は、一般的にログイン認証のためにそれを使用
3.インストールと使用
セレンリクエスト・ライブラリをインストールします。1.:
PIP3はセレンインストール
2.あなたがブラウザをインストールする必要があり
、GoogleやFirefoxの
3ダウンロードブラウザのドライバ
http://npm.taobao.org/mirrors /chromedriver/2.38/
Windowsの場合:
ダウンロードは、Win32
を使用するセレンは単純
セレンインポート webdriverを #は、ブラウザ駆動するために使用される から selenium.webdriver インポート ActionChains #はスライドを使用して写真をドラッグすることができ、コードクラック から selenium.webdriver.common.by インポートすることで #、By.IDを見つけるためにどのような方法では、 By.CSS_SELECTOR から selenium.webdriver.common.keys インポートキー #のキーボード操作 から selenium.webdriver.supportのインポート expected_conditions EC AS #と一緒に以下のWebDriverWaitと から selenium.webdriver.support.wait インポート WebDriverWait #ページのロードの特定の要素を待って インポート時間 #の方法:ブラウザのドライバ開いて、 #1 :ドライバー= webdriver.Chrome(/chromedriver.exe「r'D) #の方法:Pythonインタプリタに駆動webdriver.exeインストールディレクトリを/スクリプトは、フォルダ #Pythonのインタプリタのインストールディレクトリ/スクリプトは、環境変数の設定 ドライバー = webdriver.Chrome() のtry : driver.get(「https://www.jd.com/ 」) #が表示オブジェクトが10秒待っ取得 #ラベルをロードするために10秒を待つことができる 待機= WebDriverWait(ドライバ、10 ) #は、IDキーの要素を見つける input_tag = wait.until(EC.presence_of_element_located((By.ID、' キー'))) time.sleepは( 5 ) #製品名入力ボックスの入力 input_tag.send_keys(「人形」) #を押して、キーボードはEnterキー input_tag.send_keys(Keys.ENTER) time.sleep( 20は) 最終的には: #は、ブラウザの解除操作クローズをシステムリソースの driver.close()
セレンセレクタ
以下からのセレンのインポート webdriverをする #のウェブドライブ から selenium.webdriver.common.keys インポートキー #のキーボード操作 のインポート時間
=ドライバーwebdriver.Chrome() のtry : #暗黙の待ち時間:呼び出す前にGETの #は任意の要素をロードするために10秒待って driver.implicitly_wait(10 ) driver.get(' https://www.baidu.com/ ' ) #を明示的な待ち時間:あなたが取得した後呼び出す必要が time.sleep(5)
「」「
===============すべてのメソッドが===================
要素がラベルを見つけるためにある
要素は、すべてのラベルを見つけることです
」 「」
#Baiduのスタート自動ログイン
のテキストリンクを経由find_element_by_link_text、#を#1
= driver.find_element_by_link_text LOGIN_LINK(' ログイン' ) login_link.click() #をクリックしてログイン
time.sleep(1)
#2、#find_element_by_id IDが通過します
USER_LOGIN = driver.find_element_by_id(' TANGRAM__PSP_10__footerULoginBtn ' ) user_login.click() time.sleep( 1)
#3、find_element_by_class_name
ユーザー= driver.find_element_by_class_name(「パステキスト入力ユーザ名」) user.send_keys(「***** 」)
#4、find_element_by_name
PWD = driver.find_element_by_name(' パスワード' ) pwd.send_keys(' ***** ' ) 提出 = driver.find_element_by_id(' TANGRAM__PSP_10__submit ' ) )(submit.clickを
エンド#の
#5、find_element_by_partial_link_text
#ローカルリンクテキスト検索
LOGIN_LINK = driver.find_element_by_partial_link_text(' 登' ) login_link.click()
6#、find_element_by_css_selector
#属性セレクタに基づいて要素を見つけます
#:クラス #1 #:IDの login2_link = driver.find_element_by_css_selector(' .tang域通過footerBarULogin ' ) login2_link.click()
#7、find_element_by_tag_name
DIV = driver.find_elements_by_tag_name(' DIV ' ) プリント(DIV) time.sleep( 20)
最終的には: #は、ブラウザのリリースのオペレーティング・システム・リソースのクローズ (driver.closeを)