0
我實際上是試圖登錄這個網站(http://bit.do)來抓取受保護的數據。R:登錄javascript表格
我試過這種方法建立在以前的問題,但它不起作用。
library(rvest)
url <-"http://bit.do/#login/admin"
pgsession <-html_session(url)
pgform <-html_form(pgsession)[[2]]
filled_form <- set_values(pgform,
"username" = "username",
"password" = "password")
submit_form(pgsession,filled_form)
但是當我試圖頭(pgform)我得到這個: $命名 [1] 「」 $方法 [1] 「GET」 $網址 NULL $ ENCTYPE [1 ] 「形式」 $領域 '': '': '': '': '':註冊
也就是說跟我想象中完全不同。也許這是由於代碼?我不知道,這是我能給我的唯一理由。但如果這是由於一個JavaScript(而不是HTML),我該怎麼做這項工作?
嗨,謝謝你的回答。不幸的是我是新手,我不能完全理解你的代碼。請你解釋一下你在這裏做了什麼?我的意思是,如何通過第三方網站進行身份驗證?爲什麼如果我去inauth.insite.com.br我無法填寫表單中包含的所有信息,只能使用用戶名和密碼?另外,它不會返回任何錯誤,如果我認爲一切都很好?順便說一句,我試圖訪問受密碼保護的數據,但似乎我沒有登錄 – condom
你應該花一些時間來了解基本的網絡和協議如何工作,然後再花些時間來看看HTTP交互如何工作,然後如何web應用程序工作以及如何跟蹤他們的工作方式。我能做的最好的就是說這個網站使用第三方進行身份驗證(可能是許多應用程序的核心),從它獲取一個會話cookie,然後用它來驗證你的原始網站資源。這是這個應用程序的工作原理。如果沒有其他,請試用瀏覽器開發工具教程。 – hrbrmstr
絕對我應該這樣做,我會的。順便說一句,現在我需要解決這個問題。感謝您的建議,但我需要更多的幫助。我試圖運行你的代碼(用我的bit.do用戶名和密碼,對吧?),我沒有得到任何錯誤,但當我試圖抓取數據時,似乎我沒有訪問受保護的數據,就好像我沒有登錄 url < - 'http://bit.do/admin/PROTECTED_DATA_PAGE' data_page < - read_html(url) data < - html_nodes(data_page,'。CSS_SELECTOR') – condom