Парсинг рабочей защищенной сети
Начал изучать Python и столкнулся с первыми трудностями, имеется CRM Redmine, через которую поступают обращения от пользователей, к этой сети я подключаюсь через Cisco. Готовый код парсинга у меня уже есть, я создал массив, в который должны поступать данные с Redmine. При запуске ошибок в коде нет, но массив в который программа должна была "положить" значения пустой. Код прилагаю.
import requests
from bs4 import BeautifulSoup
import csv
HOST = 'http://redmine.easuz.mosreg.ru/'
URL = 'http://redmine.easuz.mosreg.ru/projects/picsupport/issues?page=1&query_id=263'
HEADERS = {
'Accept': '*/*',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.86 YaBrowser/20.8.0.894 Yowser/2.5 Safari/537.36'
}
def get_html(url, params =''):
r = requests.get(url, headers=HEADERS, params=params)
return r
def get_content(html):
soup = BeautifulSoup(html, 'html.parser')
items = soup.find_all('div', class_='hascontextmenu')
cards = []
for item in items:
cards.append(
{
'subject': item.find('td', class_='subject').get_text(),
'link_zayav': item.find('td', class_='subject').find('a').get('href')
}
)
return cards
html = get_html(URL)
print(get_content(html.text))
Ответы (1 шт):
Автор решения: eri
→ Ссылка
У Redmine есть классное апи. Не нужно парсить - просто загружай все заявки
GET /issues.json
{ "issues":[...], "total_count":2595, "limit":25, "offset":0 }
Также возможно надо прописать redmine.easuz.mosreg.ru в hosts