Мы пытаемся очистить продукты от Urban Outfitters и испытываем некоторые странные проблемы с помощью метода findSearchSearch. Мы называем soup.find ('span', {"class": "mainPrice ng-scope ng-binding"}) на URL-адресе продукта, чтобы получить цену. Когда мы просматриваем URL-адреса продукта (через веб-сканирование), вызов soup.find возвращает в случайное время.BeautifulSoup Find Randomly Returning None
Например, при одном запуске программы он не возвращает ни одного из второго канала. Когда вы запускаете программу сразу же после того, как ничего не меняете, она прошла вторую ссылку и не выполнила 8-ю ссылку. Here is a link to our output
Ниже наш код:
def findPrice(soup):
price = soup.find('span', {"class" : "mainPrice ng-scope ng-binding"})
print price
if price is not None:
return price.text.strip()
def postProduct(url):
driver.get(url)
html = driver.page_source
soup = BeautifulSoup(html, "html.parser")
product = {'brand': findBrand(soup), 'name': findProductName(soup), 'price': findPrice(soup), 'image': findImageLink(soup), 'description': findDescription(soup), 'url': url}
# products.insert(product)
Обратите внимание, что несущественные функции были опущены. Ниже цикл, в котором мы называем функцию postProduct:
Link to the loop containing postProduct function
Любая помощь, которая может быть обеспечена с этим вопросом будут оценены.