Моя цель — очистить сотни страниц для одного элемента на основе уникальных местоположений (и продолжать добавлять новые местоположения элемента), и если элемента нет на странице, элемент, равный None.
Я пробовал использовать операторы, операторы if/else и недавно получил несколько работающий код (спасибо stackoverflow), используя try / кроме того, чтобы сначала попробовать и посмотреть, находится ли элемент в определенную область, а если нет, перейдите в другую. Опять же, это не работает на 100%.
Код: Выделить всё
soup = BeautifulSoup(r.text, 'lxml')
if url == product_url:
try:
loc1 = soup.find('div', attrs={'id':'availability-brief', 'class':'a-
section a-spacing-none'})
seller = loc1.find('a', href=re.compile('dp_merchant'), attrs=
{'id':'sellerProfileTriggerId'}).text.strip()
except:
try:
loc2 = soup.find('div', attrs={'id':'sns-availability', 'class':'a-
section a-spacing-none'})
seller = loc2.find('span', text = re.compile('text'), attrs=
{'class':'a-size-base'}).text.strip()
except:
seller = None
print(seller)
prod_dict = {'seller':seller}
print(url)
print(prod_dict)
Подробнее здесь: https://stackoverflow.com/questions/566 ... on-by-page