2017CVPR可以直接在命令行下执行:
2017 CVPR下载:
wget -c -N --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://openaccess.thecvf.com/CVPR2017.py
2016 CVPR下载:
wget -c -N --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://openaccess.thecvf.com/CVPR2016.py
2015 CVPR下载:
wget -c -N --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://openaccess.thecvf.com/CVPR2015.py
2017 ICCV下载:
wget -c -N --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://openaccess.thecvf.com/ICCV2017.py
上面下载的论文没名字,看起来不方便,参考知乎这边的方法:
https://zhuanlan.zhihu.com/p/27919662
得到了下面的代码
# coding:utf-8
import re
import requests
import urllib
import os
# get web context
r = requests.get('http://openaccess.thecvf.com/CVPR2017.py')
data = r.text
# find all pdf links
link_list = re.findall(r"(?<=href=\").+?pdf(?=\">pdf)|(?<=href=\').+?pdf(?=\">pdf)" ,data)
name_list = re.findall(r"(?<=href=\").+?2017_paper.html\">.+?</a>" ,data)
cnt = 0
num = len(link_list)
# your local path to download pdf files
localDir = 'E:\CVPR2017\\'
if not os.path.exists(localDir):
os.makedirs(localDir)
while cnt < num:
url = link_list[cnt]
# seperate file name from url links
file_name = name_list[cnt].split('<')[0].split('>')[1]
# to avoid some illegal punctuation in file name
file_name = file_name.replace(':','_')
file_name = file_name.replace('\"','_')
file_name = file_name.replace('?','_')
file_name = file_name.replace('/','_')
file_path = localDir + file_name + '.pdf'
# download pdf files
print '['+str(cnt)+'/'+str(num)+"] Downloading -> "+file_path
try:
urllib.urlretrieve('http://openaccess.thecvf.com/'+url,file_path)
except Exception,e:
continue
cnt = cnt + 1
print "all download finished"
可以直接下载2017年的所有论文,同时,测试了把其中的2017改成2016同样可以下载。
测试可以下载CVPR2017,CVPR2016,ICCV2017