目前存在9145份RFC文档:RFC Searchhttps://www.rfc-editor.org/search/rfc_search.php 我使用python代码进行爬取,其实思路超级简单,拼接每个rfc文档的url,之后使用wget下载保存。需要注意的是存在两种格式的URL,需要对每一个进行下载测试。python代码如下:
import time
import wget
class Test(object):
def getData(self, page):
url1 = "https://www.rfc-editor.org/pdfrfc/rfc"
url2 = "https://www.rfc-editor.org/rfc/rfc"
for i in range(1, page):
urlpdf1 = url1 + str(i) + ".txt.pdf"
urlpdf2 = url2 + str(i) + ".pdf"
print("page ", str(i))
try:
wget.download(urlpdf1, "./rfc/" + str(i) + ".pdf")
except:
print("----second ", str(i))
try:
wget.download(urlpdf2, "./rfc/" + str(i) + ".pdf")
except:
print("--------other ", str(i))
time.sleep(2)
def run(self):
self.getData(9145)
if __name__ == '__main__':
test = Test()
test.run()
最终的结果是基本可以下载所有的rfc文档,为了不影响该网站的正常业务,每次下载一个文档休眠 2s,最终差不多需要6个多小时可以下载完成。