天天看點

ArXiv 網頁的HTML内容ArXiv 網頁的HTML内容

ArXiv 網頁的HTML内容

(本人是天文專業的,以天體實體作為例子)(火狐浏覽器)

ArXiv網址:https://arxiv.org/list/astro-ph/new

html = urlopen("https://arxiv.org/list/astro-ph/new")
           

HTML的導航樹可以通過 點選滑鼠右鍵-檢視元素 如圖:

ArXiv 網頁的HTML内容ArXiv 網頁的HTML内容

我們比較關心的是這一塊内容:

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響應),來自任何站點的持續快速請求将被解釋為攻擊; 我們會毫不猶豫地毫不猶豫地作出相應的回應。