ページが改ページされたときにループする方法を知っていますが、複数の情報/ html_nodes
を1つのループ関数で削りたいと思っています。これまで私は以下のことを試みました。基本的に求職者のウェブサイトで、会社名、会社の説明、オープンポジションの番号が必要です。1つの関数内で複数のデータを削り取る
私はsprintf
を使用して1-14ページを取得します。
urlingtek <- sprintf("https://www.jobindex.dk/virksomhedsoversigt/kanal/ingenioer?page=%d", 1:14)
私は1つのデータソースをこすりする働きループを作ってきました。
company <- function(virksomhed){
company %>% read_html() %>%
html_nodes('.jix_company_name_link a') %>%
html_text()
}
virk <- lapply(urlingtek, virksomhed)
可能であれば、すべてのユーティリティを一度に削除したいと考えています。
私は今のところこれまで運のない
jobvirksom <- function(alt){
alt %>%
read_html() %>%
html_nodes('.jix_company_name_link a') %>%
html_text()
html_nodes('.jix_companyindex_overview_ad_content') %>%
html_text()
html_nodes('.jix_active a') %>%
html_text()
}
を使用して試してみました。一度にすべてをこすったら、lapply
を押して1つのリストにしてください。
関数内の2つの 'html_nodes'呼び出しにデータを渡していません。 'purrr :: map_df'もチェックしてください。複数のフィールドをdata.frameに簡単に組み立てることができます。 – alistaire
だからalt%>%read_html infrontの最後のhtml_nodesを修正する必要がありますか? – ReneKJ
2番目と3番目の 'html_nodes'呼び出しに同じものを渡したいと思うので、おそらくそうではありません。おそらく、最初のパイプラインの結果を変数に保存し、それを他のものに渡す必要があります。あるいは、 'lapply' /' purrr :: map'を使って最初のノード集合を反復処理し、それらを抽出してリストやdata.frameにアセンブルしようとしています。 – alistaire