Я написал функцию, чтобы найти все файлы .pdf на веб-странице и загрузить их. Это работает хорошо, когда ссылка общедоступна, но когда я использую ее для веб-сайта курса (доступ к которому можно получить только по адресу inte rnet моего университета), загруженные файлы PDF повреждены и не могут быть открыты.
Как это исправить?
def get_pdfs(my_url):
html = urllib2.urlopen(my_url).read()
html_page = BeautifulSoup(html)
current_link = ''
links = []
for link in html_page.find_all('a'):
current_link = link.get('href')
if current_link.endswith('pdf'):
links.append(my_url + current_link)
print(links)
for link in links:
#urlretrieve(link)
wget.download(link)
get_pdfs('https://grader.eecs.jacobs-university.de/courses/320241/2019_2/')
Когда я использую эту грейдерную ссылку, current_link похож на /courses/320241/2019_2/lectures/lecture_7_8.pdf
, но часть /courses/320241/2019_2/
уже включена в my_url, и когда я добавляю ее, она, очевидно, не работает. Однако эта функция отлично работает для [этой ссылки] [1]:
Можно ли использовать одну и ту же функцию для работы с обоими типами ссылок?