Я хочу записать программу Python, чтобы загрузить содержание веб-страницы и затем загрузить содержание веб-страниц, с которыми связывается первая страница.
Например, это - основная веб-страница http://www.adobe.com/support/security/ и страницы, которые я хочу загрузить: http://www.adobe.com/support/security/bulletins/apsb13-23.html и http://www.adobe.com/support/security/bulletins/apsb13-22.html
Существует определенное условие, которое я хочу соблюсти: это должно загрузить только веб-страницы в соответствии с бюллетенями не при консультациях (http://www.adobe.com/support/security/advisories/apsa13-02.html)
#!/usr/bin/env python
import urllib
import re
import sys
page = urllib.urlopen("http://www.adobe.com/support/security/")
page = page.read()
fileHandle = open('content', 'w')
links = re.findall(r"<a.*?\s*href=\"(.*?)\".*?>(.*?)</a>", page)
for link in links:
sys.stdout = fileHandle
print ('%s' % (link[0]))
sys.stdout = sys.__stdout__
fileHandle.close()
os.system("grep -i '\/support\/security\/bulletins\/' content >> content1")
Я уже извлек ссылку бюллетеней в content1, но не знаю, как загрузить содержание тех веб-страниц путем обеспечения content1, как введено.
content1 файл как показано ниже:-/support/security/bulletins/apsb13-23.html /support/security/bulletins/apsb13-23.html /support/security/bulletins/apsb13-22.html /support/security/bulletins/apsb13-22.html /support/security/bulletins/apsb13-21.html /support/security/bulletins/apsb13-21.html /support/security/bulletins/apsb13-22.html /support/security/bulletins/apsb13-22.html /support/security/bulletins/apsb13-15.html /support/security/bulletins/apsb13-15.html /support/security/bulletins/apsb13-07.html
Вероятно, этот вопрос относится к стековому потоку!
Но в любом случае вы можете посмотреть в HTTrack , для этого он выполняет аналогичную операцию и, более того, с открытым исходным кодом
Если я понял ваш вопрос, вам нужен следующий сценарий:
#!/usr/bin/env python
import urllib
import re
import sys
import os
page = urllib.urlopen("http://www.adobe.com/support/security/")
page = page.read()
fileHandle = open('content', 'w')
links = re.findall(r"<a.*?\s*href=\"(.*?)\".*?>(.*?)</a>", page)
for link in links:
sys.stdout = fileHandle
print ('%s' % (link[0]))
sys.stdout = sys.__stdout__
fileHandle.close()
os.system("grep -i '\/support\/security\/bulletins\/' content 2>/dev/null | head -n 3 | uniq | sed -e 's/^/http:\/\/www.adobe.com/g' > content1")
os.system("wget -i content1")