Извлечение текста с нескольких сайтов - PullRequest
0 голосов
/ 16 сентября 2018
from bs4 import BeautifulSoup
import re
import urllib2
import urllib
list_open = open("weblist.txt")
read_list = list_open.read()
line_in_list = read_list.split("\n")
for url in line_in_list:
        Beautiful = urllib2.urlopen(url).read()
        beautiful
        soup = bs4.BeautifulSoup(beautiful)
        for news in soup:
                 print soup.getText()

Следующий код помогает мне извлечь текст из нескольких веб-сайтов (weblist.txt)

, но когда мой веб-список содержит какую-либо ссылку или веб-сайт, который не открывается с этим кодом, он немедленно останавливается и не проверяет дальнейшие ссылки. Предположим, что если у меня есть 10 ссылок, а вторая не открыта или я не могу их проанализировать, это приводит к ошибке и останавливается в этой ссылке без проверки дальнейших ссылок. Я хочу, чтобы она проверяла каждую ссылку из веб-списка (от начала до конца) и извлекала текст из все те ссылки, которые являются подлинными или могут анализировать.

1 Ответ

0 голосов
/ 16 сентября 2018

Просто добавьте попытку, за исключением следующего утверждения:

for url in line_in_list:
    try:
        Beautiful = urllib2.urlopen(url).read()
        beautiful
        soup = bs4.BeautifulSoup(beautiful)
        for news in soup:
             print soup.getText()
    except Exception as e:
        #Error handling
        print(e)
...