Я использую Python 3.7 и BeautifulSoup 4. Я хочу найти все элементы "div.title", которые встречаются в элементах "td.info".Селектор CSS (я полагаю) выглядел бы как
td.info div.title
Так что я думал, что смогу получить элементы вроде этого
elts = soup.findAll("td", {"class": "info"}).find("div", {"class": "title"})
for div in elts:
, но вместо этого я получаю ошибку
Traceback (most recent call last):
File "manage.py", line 21, in <module>
execute_from_command_line(sys.argv)
File "/Users/davea/Documents/workspace/myproject_project/venv/lib/python3.7/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
utility.execute()
File "/Users/davea/Documents/workspace/myproject_project/venv/lib/python3.7/site-packages/django/core/management/__init__.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Users/davea/Documents/workspace/myproject_project/venv/lib/python3.7/site-packages/django/core/management/base.py", line 316, in run_from_argv
self.execute(*args, **cmd_options)
File "/Users/davea/Documents/workspace/myproject_project/venv/lib/python3.7/site-packages/django/core/management/base.py", line 353, in execute
output = self.handle(*args, **options)
File "/Users/davea/Documents/workspace/myproject_project/myproject/management/commands/runstats.py", line 11, in handle
ret = MediaService.check_url("https://i.redd.it/wazz3axjtk331.jpg")
File "/Users/davea/Documents/workspace/myproject_project/myproject/services/media_service.py", line 42, in check_url
results = json.loads(MediaService.parseResults(code, True))
File "/Users/davea/Documents/workspace/myproject_project/myproject/services/media_service.py", line 96, in parseResults
elts = soup.findAll("td", {"class": "info"}).find("div", {"class": "title"})
File "/Users/davea/Documents/workspace/myproject_project/venv/lib/python3.7/site-packages/bs4/element.py", line 1621, in __getattr__
"ResultSet object has no attribute '%s'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?" % key
AttributeError: ResultSet object has no attribute 'find'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?
Что дает?