BeautifulSoup: как передать переменную в суп.find({переменная]) ⇐ Python
BeautifulSoup: как передать переменную в суп.find({переменная])
Я использую Beautiful Soup для поиска в XML-файле, предоставленном SEC (это общедоступные данные). Beautiful Soup очень хорошо работает для ссылок на теги, но я не могу передать переменную в его функцию поиска. Статический контент — это нормально. Я думаю, что в моем понимании Python есть пробел, который я не могу понять. (Я программирую несколько дней в году, это не моя основная роль)
Файл: https://reports.adviserinfo.sec.gov/rep ... 023.xml.gz
Я загружаю, разархивирую и затем создаю суп из файла с помощью lxml.
с open(Firm_Download_name,'r') как f: суп = BeautifulSoup(f, 'lxml') Далее у меня возникла проблема: у меня есть список номеров CRD фирм (это общедоступные номера, идентифицирующие фирму), которые я ищу в XML-файле, а затем извлекаю различные точки данных из дочерних тегов.
Если я напишу это статически, например:
soup.find(firmcrdnb="5639055").parent Это прекрасно работает, но я хочу просмотреть список номеров CRD и каждый раз извлекать новый блок. Не могу понять, как передать переменную в функцию Soup.find.
Мне кажется, это должно быть просто. Я ценю любую помощь, которую вы можете оказать.
Вот моя текущая попытка:
searchstring = 'firmcrdnb="'+Firm_CRD+'"' select_firm = суп.найти(строка поиска).родитель Я пробовал другие подобные настройки и просматривал другие обмены стеками, например, можно ли передать переменную в (Beautifulsoup) суп.find()? но просто не совсем понял.
Вот пример XML.
Я использую Beautiful Soup для поиска в XML-файле, предоставленном SEC (это общедоступные данные). Beautiful Soup очень хорошо работает для ссылок на теги, но я не могу передать переменную в его функцию поиска. Статический контент — это нормально. Я думаю, что в моем понимании Python есть пробел, который я не могу понять. (Я программирую несколько дней в году, это не моя основная роль)
Файл: https://reports.adviserinfo.sec.gov/rep ... 023.xml.gz
Я загружаю, разархивирую и затем создаю суп из файла с помощью lxml.
с open(Firm_Download_name,'r') как f: суп = BeautifulSoup(f, 'lxml') Далее у меня возникла проблема: у меня есть список номеров CRD фирм (это общедоступные номера, идентифицирующие фирму), которые я ищу в XML-файле, а затем извлекаю различные точки данных из дочерних тегов.
Если я напишу это статически, например:
soup.find(firmcrdnb="5639055").parent Это прекрасно работает, но я хочу просмотреть список номеров CRD и каждый раз извлекать новый блок. Не могу понять, как передать переменную в функцию Soup.find.
Мне кажется, это должно быть просто. Я ценю любую помощь, которую вы можете оказать.
Вот моя текущая попытка:
searchstring = 'firmcrdnb="'+Firm_CRD+'"' select_firm = суп.найти(строка поиска).родитель Я пробовал другие подобные настройки и просматривал другие обмены стеками, например, можно ли передать переменную в (Beautifulsoup) суп.find()? но просто не совсем понял.
Вот пример XML.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение