1
私はこのURLからシェアマーケットで "rvest"パッケージを掻き集めようとしています:http://finans.mynet.com/borsa/canliborsa/#A私は試してみるためにあなたのためのダミーアカウントを作成以下のユーザー名とパスワードは実際のもので、大丈夫です。 私が出ていることは以下の通りです:Rvest Web Scrapingにより空のデータテーブルが列名のみで表示されます
library("rvest")
library("data.table")
url<- "http://uyeler.mynet.com/login/login.asp?rurl=http%3A%2F%2Ffinans.mynet.com%2Fborsa%2Fcanliborsa%2F&formname=finans#A"
session<-html_session(url)
form<- html_form(session)[[1]]
login<- set_values(form, "username" ="muharrem_babaogul_1991","password"="q1w2e3")
submit_form(session,login)
jumped<-jump_to(session,url = 'http://finans.mynet.com/borsa/canliborsa/#A')
page<- read_html(jumped)
page<-html_nodes(page,xpath='//*[@id="canliLeftColumn"]/div[3]/table')
page<- html_table(page)
head(page[[1]])
そして結果:
[1] Hisse Hisse Hisse Son Alış
[6] Satış %Fark En Düşük En Yüksek AOF
[11] Hacim (Lot) Hacim (TL) Son İşlem Ekle/Kaldır
<0 rows> (or 0-length row.names)
あなたが見ることができるように、私は、XPathを使用してテーブルに到達することができ、私は列名を取得しますが、どのなし内部のデータ。テーブルは完全に空です。 助けることができる人はいますか? ありがとうございます。
テーブルはjavascriptで生成されます。興味のあるデータは 'data.fdata'というファイルのようですが、安全なページからリクエストする方法がわかりません。この回答を見て:http://stackoverflow.com/questions/40638511/using-rvest-to-grab-data-returns-no-matches/40642507#40642507、これは役立つ可能性があります。 – Dave2e
はい@ Dave2e、データはfdataから来るので、私はそれを得ることができません、今までそれについて知っていませんでした。しかし、それでも私はそれをとにかく削ることはできません。 fdata url([ここ](http://finans.mynet.com/borsa/canliborsadata/data.fdata))もログインが必要です。そして、上の方法(sumbit_formとjump_to)は、ファイルがHTMLファイルではないというread_html(jumped)関数でエラーが発生するため、使用できません。だから私はこの問題を解決するためにこの[link](https://stackoverflow.com/questions/24723606/scrape-password-protected-website-in-r)のソリューションを試してみました。うまくいかない。 – Barsssk