Финвиз — сайт с мощным инструментом для проверки акций. Однако он имеет некоторые ограничения.

  1. Пользователь может одновременно использовать только один набор скрининга, поэтому ему нелегко собирать акции, отфильтрованные с помощью разных наборов скрининга.
  2. Данные попадают на разные вкладки, поэтому пользователь не может видеть данные в одном окне.

Поэтому я написал скрипт на Python для решения вышеуказанных проблем.

Структура сайта

Во-первых, взгляните на URL-адрес. Возьмите приведенный ниже URL, например, мы можем увидеть шаблон для синтаксического анализа

Красная часть предназначена для разных вкладок, фиолетовая часть предназначена для настройки скринера, а зеленая часть — это строки данных.

Затем проверьте структуру html, чтобы увидеть, в каких узлах хранятся нужные нам данные. Столбцы хранятся в узле с классом table-light, а данные хранятся в узле с valign top.

Важно:Функция узла должна быть уникальной, иначе синтаксический анализатор получит ненужные данные.

Кодирование

Выяснив, где находятся данные, мы можем приступить к кодированию!
Во-первых, импортируйте необходимые инструменты.

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

Вторая часть — это функция генерации файла. Функция использует только что созданную функцию для анализа различных вкладок и их объединения в окончательный набор данных. Если функция запускается более одного раза, данные будут сохранены в одном и том же файле.

"Код"