ArXiv 網頁的HTML内容
(本人是天文專業的,以天體實體作為例子)(火狐浏覽器)
ArXiv網址:https://arxiv.org/list/astro-ph/new
html = urlopen("https://arxiv.org/list/astro-ph/new")
HTML的導航樹可以通過 點選滑鼠右鍵-檢視元素 如圖:
ArXiv 網頁的HTML内容ArXiv 網頁的HTML内容
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1TPBRGdWhVYzZFWlZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DNzgjN0gDM5ADMxITM3EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
我們比較關心的是這一塊内容:
html
——body
——div <divid="content">
——div <divid="dlpage">
——d1
——dt
——dt
可以通過BeautifulSoup檢視裡面的内容:
bsObj = BeautifulSoup(html, "lxml")
擷取目前日期:
date = bsObj.find("h3")
print(dateline.get_text())
輸出結果為:New submissions for Fri, 8 Dec 17
檢視當天所有文章的ArXiv編号和提供的打開方式:
articleList = bsObj.findAll("span", {"class":"list-identifier"})
for article in articleList:
print(article.get_text())
檢視當天所有文章的标題:
titleList = bsObj.findAll("div", {"class":"list-title mathjax"})
for title in titleList:
print(title.get_text())
擷取文章的摘要:
findAll("p", {"class":"mathjax"})
采集所有文章的pdf下載下傳位址:
for pdflink in bsObj.findAll("a", {"title":"Download PDF"}):
if "href" in pdflink.attrs:
print(pdflink.attrs['href'])
URL連接配接都以 /pdf/ 開頭,這時需要在前面加上 https://arxiv.org/ 。
在使用之前建議閱讀:https://arxiv.org/help/robots
無意中下載下傳本網站上的所有網址将傳回太位元組的資料。 就帶寬消耗而言,這對我們來說是非常實際的成本,而且對于我們數以萬計的真實使用者來說,我們的服務的響應性也是非常高的。
此伺服器配置為監視活動并拒絕通路違反上述指南的網站。 通路被拒絕後(即403通路被拒絕HTTP響應),來自任何站點的持續快速請求将被解釋為攻擊; 我們會毫不猶豫地毫不猶豫地作出相應的回應。