Как очистить элемент с другим местоположением на страницеPython

Программы на Python
Anonymous
Как очистить элемент с другим местоположением на странице

Сообщение Anonymous »

Я очищаю элемент, который находится в разных позициях на странице. Мой текущий код в некоторой степени работает, но случайно не возвращает значение. Когда я устанавливаю значение продавца = None, возникают другие экземпляры значения None, хотя оно должно быть именем продавца.

Моя цель — очистить сотни страниц для одного элемента на основе уникальных местоположений (и продолжать добавлять новые местоположения элемента), и если элемента нет на странице, элемент, равный 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)
При использовании моего кода я получу имя продавца, а если его нет, он не вернет ничего, но установит для других возвращаемых значений значение «нет», когда фактическое имя продавца настоящее. Если код будет запущен еще раз, он может не вернуть имя продавца, как раньше. Пример: Запуск 1, страница 1: имя продавца = foo. Запуск 2, страница 1: имя продавца = нет. Я ожидаю, что код выполнит поиск в указанных местах и ​​вернет текст, а если не в указанных местах, продавец = Нет и продолжит поиск по всем страницам. А также иметь возможность добавлять новые локации по мере их обнаружения. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/566 ... on-by-page

Вернуться в «Python»