Update app.py
Browse files
app.py
CHANGED
|
@@ -5,16 +5,25 @@ from urllib.parse import urljoin
|
|
| 5 |
|
| 6 |
# Функция для загрузки HTML-страницы
|
| 7 |
def fetch_page(url):
|
| 8 |
-
|
| 9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
# Функция для парсинга страницы и извлечения данных
|
| 12 |
def parse_page(html):
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
return None
|
| 17 |
-
return content
|
| 18 |
|
| 19 |
# Основная часть Streamlit приложения
|
| 20 |
def main():
|
|
|
|
| 5 |
|
| 6 |
# Функция для загрузки HTML-страницы
|
| 7 |
def fetch_page(url):
|
| 8 |
+
try:
|
| 9 |
+
response = requests.get(url)
|
| 10 |
+
response.raise_for_status() # Генерирует исключение для неправильных ответов
|
| 11 |
+
return response.text
|
| 12 |
+
except requests.exceptions.RequestException as e:
|
| 13 |
+
st.error(f"Ошибка при загрузке страницы: {e}")
|
| 14 |
+
return None
|
| 15 |
|
| 16 |
# Функция для парсинга страницы и извлечения данных
|
| 17 |
def parse_page(html):
|
| 18 |
+
try:
|
| 19 |
+
soup = BeautifulSoup(html, 'html.parser')
|
| 20 |
+
content = soup.find_all('div', class_='wap_view')
|
| 21 |
+
if not content:
|
| 22 |
+
return None
|
| 23 |
+
return content
|
| 24 |
+
except Exception as e:
|
| 25 |
+
st.error(f"Ошибка при парсинге страницы: {e}")
|
| 26 |
return None
|
|
|
|
| 27 |
|
| 28 |
# Основная часть Streamlit приложения
|
| 29 |
def main():
|