2016-08-15 23 views
1

私の目的は、スクリプトを使ってWebページを自動的に操作できるようにすることです。情報を入力し、正しいドロップダウンボックスを選択する。最小限のユーザ入力で。PythonでWebページを操作する

私の例では、全国の鉄道のウェブサイトを使用しています。

import win32com.client 
from time import sleep 

ie = win32com.client.Dispatch("InternetExplorer.Application") 
ie.Visible = 1 
ie.navigate("http://www.nationalrail.co.uk/") 

while ie.ReadyState != 4: # Wait for browser to finish loading 
    sleep(1) 
print("Webpage Loaded") 

page = ie.Document 

links = page.links 

私は、到着に「離脱」のボックスを変更する「駅/郵便番号」から記入し、Goをヒットしたい場合。これをどうやってやりますか?

また、このようなWebページを操作するための最善の方法はwin32comですか?

+2

最初に2番目の質問にお答えします。ブラウザシミュレーションの標準は、Python用のセレンモジュールです。このオプションを使用すると、ページ上で何らかのJavaScriptを直接実行してページを操作できます。美しいスープやbs4モジュールは、リンクのためにページをスクラップするために使用されます。 – ytpillai

答えて

2

私はすべてのPythonのユーザーが自分のために物事を簡単にすると、ライブラリにSelenium?

を使用しない理由は、可能な限り最も困難な方法でこれをやろうと、あなたを味わうことができると確信していますがここであなたがしているものをあなたのコード&ですSeleniumでしようとしている:

from selenium import webdriver 
driver = webdriver.Firefox() # Initialize the webdriver session 
driver.get('http://www.nationalrail.co.uk/') # replaces "ie.navigate" 
driver.find_element_by_id('sltArr').find_elements_by_tag_name('option')[1].click() # Selects the "Arrive" option 

を参照してください。もっとよく見て!その最後の行は、 "Leaving"フォームを選択し、その中にoptionタグを見つけて、Arriveオプションを選択します。このコードでは、このサイトでやりたいことの残りの部分を把握できるはずです。

関連する問題