Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 27.06.2022
Сообщений: 3

Перенос парсера в функцию

27.06.2022, 06:51. Показов 1138. Ответов 4

Студворк — интернет-сервис помощи студентам
Всем привет, сделал парсинг валюты с сайта N, код рабочий, далее планирую интегрировать спарсинговые данные в тг-бот. Однако, когда на сайте информация обновляется, в боте этого не происходит автоматически, только при перезапуска бота вручную.

Нашел информацию, что для этого нужно сделать парсер внутри функции и когда нужны будут данные будет вызваться функция. У самого не получается корректно поместить парсинг в функцию, так как есть еще цикл for для того, чтобы вытащить нужные числа из спарсинговых строк. Прикладываю код:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import requests
from bs4 import BeautifulSoup
 
 
url = 'КАКОЙ-ТО URL'
 
source = requests.get()
main_text = source.text
soup = BeautifulSoup(main_text, 'html.parser')
table = soup.findAll('td')
table = str(table)
 
m = []
n = ''
for i in table:
    if i.isdigit():
        n += i
    else:
        if n.isdigit():
            m.append(float(n))
            n = ''
if n != '':
    m.append(float(n))
 
 
dollar_buy = (m[0])
dollar_sale = (m[2])
euro_buy = (m[4])
euro_sale = (m[6])
tenge_buy = (m[9])
tenge_sale = (m[11])
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.06.2022, 06:51
Ответы с готовыми решениями:

Перенос массива в функцию
как передать массив в функцию с помощью glutDisplayFunc(display); в функцию display ?

Перенос формулы в функцию
Ребята у меня классика, я перенес в функцию формулу перевода температуры из фаренгейта в цильсия Вот код #include <stdio.h> ...

Перенос кода в дружественную функцию
Нужно подсчитать количество слов в строке и сделать это через дружественную функцию. Не совсем понимаю как это реализовать. Изначально...

4
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 07:53
Цитата Сообщение от klv Посмотреть сообщение
и когда нужны будут данные будет вызваться функция.
Какие, конкретно, данные, из выложенного кода, нужны будут?
0
0 / 0 / 0
Регистрация: 27.06.2022
Сообщений: 3
27.06.2022, 07:57  [ТС]
dollar_buy = (m[0])
dollar_sale = (m[2])
euro_buy = (m[4])
euro_sale = (m[6])
tenge_buy = (m[9])
tenge_sale = (m[11])
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 08:14
Лучший ответ Сообщение было отмечено klv как решение

Решение

Цитата Сообщение от klv Посмотреть сообщение
url = 'КАКОЙ-ТО URL'
Конкретный url есть, с которым код работать будет?

Добавлено через 1 минуту
Цитата Сообщение от klv Посмотреть сообщение
source = requests.get()
Так и должно быть?

Добавлено через 6 минут
Например так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
def f(m, url):
    
    source = requests.get(url)
    main_text = source.text
 
    soup = BeautifulSoup(main_text, 'html.parser')
    table = soup.findAll('td')
    table = str(table)
    
 
    
    n = ''
    for i in table:
        if i.isdigit():
            n += i
        else:
            if n.isdigit():
                m.append(float(n))
                n = ''
    if n != '':
        m.append(float(n))
 
m = []
url = 'КАКОЙ-ТО URL'
 
f(m, url)
 
if len(m) == 12: 
    dollar_buy = (m[0])
    dollar_sale = (m[2])
    euro_buy = (m[4])
    euro_sale = (m[6])
    tenge_buy = (m[9])
    tenge_sale = (m[11])
1
0 / 0 / 0
Регистрация: 27.06.2022
Сообщений: 3
27.06.2022, 08:26  [ТС]
Спасибо, помогло!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.06.2022, 08:26
Помогаю со студенческими работами здесь

Перенос кода с функции в другую функцию
Помогите, как написать код без функции "int Min", а все с функции "int Min" перенести в "int main()" (В программе нужно вывести...

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

Перенос индексов из массива панелей в другую функцию
В двойном цикле создается массив панелей 4 на 4. для панели используется Tag, чтобы передавать индексы активной панели в другое место(в...

Перенос массива в функцию и еще одна ошибка
#include <iostream> #include <locale.h> using namespace std; int findDet3(int matrix); int main() { ...

Перенос массива из функции в функцию путём копирования
Столкнулся с тем, что массив оказывается пустым, когда я пытаюсь сделать так: **ArrayP = **Array; Где Array - заполненный массив, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru