這份作業希望能夠讓你熟悉 Web Scraping 的流程。
請幫我從 index1
到 index5
,抓取 5 頁 PTT 中信兄弟的隊版 最舊午夜。抓取欄位包含標題(article_title)、連結(article_link)、發文人(author_name)。
library(tidyverse)
### template FYI
<- read_rds("data/Lab10/df_index_template.rds")
df_index %>% glimpse() df_index
#> Rows: 100
#> Columns: 3
#> $ article_title <chr> "精華區", "Re: [閒聊] 唯一值得慶賀的~~", "Re: [情報]養父鐵有新的留言~~", "有請逆轉…
#> $ article_link <chr> "https://www.ptt.cc/bbs/Elephants/M.1020937263.A.html", …
#> $ author_name <chr> "okcool", "chriswu", "oscar19", "okcool", "carmalone", "…
承接上題目,請幫我抓下上面的所有文章主文,應該有 100 則,但有些可能掛掉了。抓取欄位包含連結(article_link)、內文(main_text)、作者(meta_author)、標題(meta_title)、時間(meta_time)、推文總數(meta_comments)、作者 IP (main_IP)。
若想要練習,請幫再抓抓看推文。抓取欄位包含連結(article_link)、推文(push_content)、推文作者(push_author)、推文時間(push_time)、推文推噓(push_tag)。
### template FYI
<- read_rds("data/Lab10/df_main_template.rds")
df_main_template <- read_rds("data/Lab10/df_push_template.rds")
df_push_template %>% glimpse()
df_main_template %>% glimpse() df_push_template
#> Rows: 88
#> Columns: 7
#> $ article_link <chr> "https://www.ptt.cc/bbs/Elephants/M.1020937263.A.html", …
#> $ meta_author <chr> "okcool (風起,怒而飛)", "chriswu (最接近初段的男人)", "oscar19 (卡卡歐)"…
#> $ meta_title <chr> "精華區", "Re: [閒聊] 唯一值得慶賀的~~", "Re: [情報]養父鐵有新的留言~~", "有請逆轉…
#> $ meta_time <chr> "Thu May 9 17:45:34 2002", "Tue Mar 4 22:34:05 2003", …
#> $ meta_comments <int> 297, 50, 36, 49, 20, 32, 20, 7, 14, 10, 15, 9, 22, 14, 1…
#> $ main_text <chr> "\n現在例行賽部分大致完工..\n\n打算新增點將錄..\n請各位版友幫忙提供一些資料吧...\n不論是離隊的…
#> $ main_IP <chr> "※ 發信站: 批踢踢實業坊(ptt.cc) \n", "※ 發信站: 批踢踢實業坊(ptt.csie.ntu.…
#> Rows: 1,141
#> Columns: 5
#> $ article_link <chr> "https://www.ptt.cc/bbs/Elephants/M.1020937263.A.html", "…
#> $ push_author <chr> "ClingVnn", "qoiiwwe", "kelvintung", "aikcnxu", "sephiros…
#> $ push_time <chr> " 推140.114.202.1…
#> $ push_tag <chr> "→ ", "→ ", "推 ", "推 ", "推 ", "→ ", "→ ", "→ ", "推 ", "→ …
#> $ push_content <chr> ":)", ":好棒", ":怎樣叫連暑??", ":1", ":?", ":..................…