bundesAPI / bundesAPI/deutschland

Bundesanzeiger: query of a string starting with a number returns an error

Open
#108 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
1.4k
Forks
83
PR merge metrics
No merged PRs in 30d

Description

How to reproduce:
```
from deutschland.bundesanzeiger import Bundesanzeiger
ba = Bundesanzeiger()
data = ba.get_reports('4steps systems')
```
Expected result:
- assignment of the result dict to `data`.

What I got instead:
```
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
Cell In[4], line 3
1 from deutschland.bundesanzeiger import Bundesanzeiger
2 ba = Bundesanzeiger()
----> 3 data = ba.get_reports('4steps systems')

File [~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:186](https://file+.vscode-resource.vscode-cdn.net/home/adomberg/projects/20230616_Unternehmensregister/~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:186), in Bundesanzeiger.get_reports(self, company_name)
182 # perform the search
183 response = self.session.get(
184 f"https://www.bundesanzeiger.de/pub/de/start?0-2.-top%7Econtent%7Epanel-left%7Ecard-form=&fulltext={company_name}&area_select=&search_button=Suchen"
185 )
--> 186 return self.__generate_result(response.text)

File [~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:120](https://file+.vscode-resource.vscode-cdn.net/home/adomberg/projects/20230616_Unternehmensregister/~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:120), in Bundesanzeiger.__generate_result(self, content)
118 """iterate trough all results and try to fetch single reports"""
119 result = {}
--> 120 for element in self.__find_all_entries_on_page(content):
121 get_element_response = self.session.get(element.content_url)
123 if self.__is_captcha_needed(get_element_response.text):

File [~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:90](https://file+.vscode-resource.vscode-cdn.net/home/adomberg/projects/20230616_Unternehmensregister/~/miniconda3/envs/uregister/lib/python3.8/site-packages/deutschland/bundesanzeiger/bundesanzeiger.py:90), in Bundesanzeiger.__find_all_entries_on_page(self, page_content)
88 soup = BeautifulSoup(page_content, "html.parser")
89 wrapper = soup.find("div", {"class": "result_container"})
---> 90 rows = wrapper.find_all("div", {"class": "row"})
91 for row in rows:
92 info_element = row.find("div", {"class": "info"})

AttributeError: 'NoneType' object has no attribute 'find_all'
```
I tried other numerals and non-numerals with the described error pattern.

My env: Ubuntu 22.04, python 3.8.17

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.