Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2022, 21:12   #1
Ari_j9
Новичок
Джуниор
 
Регистрация: 18.06.2022
Сообщений: 1
По умолчанию Нужна помощь с занесением данных в базу

Пишу краулер сайта новостей и возникла проблема при заполнении файла. Скрипт должен заносить в файл только те данные, которых ещё нет в файле. В файл же попадают все заголовки несколько раз и численность каждого нового возрастает в геометрической прогрессии. Почему это происходит я понимаю, но не знаю метода, который мог бы это решить. Заранее спасибо. Вот проблемная часть кода:
Код:
def search_db(title, description, date):
    with open('db.txt', 'r', encoding='utf=8') as file:
        for item in file.readlines():
            line = item.strip()
            if line != title:
                data.append({
                    'Название': title,
                    'Описание': description,
                    'Дата': date
                })
                with open('db.txt', 'a', encoding='utf=8') as file:
                    file.write(f'\n{title}')
def get_data():    
    for link in get_links():
        time.sleep(number)
        response = requests.get(link, headers=headers)
        src = response.text
        soup = BeautifulSoup(src, 'lxml')

        title = soup.find('h1', class_='ds_ext_title-1XuEF').text
        description_1 = soup.find_all('span', class_='ds_ext_text-tov6w')[0].text
        description_2 = soup.find_all('span', class_='ds_ext_text-tov6w')[1].text
        description = description_1 + description_2
        date = soup.find('div', class_='ds_ext_marker-kFsBk').text
        search_db(title, description, date)
Ari_j9 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна помощь с обработкой данных в С++ LLe Помощь студентам 0 23.11.2015 13:28
нужна помощь с обработкой данных в С++ LLe Помощь студентам 0 23.11.2015 13:26
Восстановить базу Whatsapp с начала 2015 года,нужна помощь! barmalei! Помощь студентам 0 02.11.2015 15:56
База данных в паскале.........нужна помощь Vod9noy Фриланс 1 24.06.2009 23:22
нужна помощь... динамические структуры данных lucas Общие вопросы C/C++ 3 22.09.2007 22:06