Это решит вашу data-asin
вещь:
items = page_soup.select('div[data-asin]')
for item in items:
print(item['data-asin'])
B0887QV8BB
B0856Q8K78
B01ISO92V2
B07N3XNX77
B07XQXPF21
B07VKNWD5P
.
.
.
.
price = [i.text for i in page_soup.findAll('span', class_="a-offscreen")]
Изменить:
from bs4 import BeautifulSoup as bs
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time
url = 'https://www.amazon.sa/s?i=electronics&bbn=16966387031&rh=n:12463162031%2Cn:12463163031%2Cn:16966387031%2Cp_6:A2XPWB6MYN7ZDK&s=price-asc-rank&dc&fst=as:off&qid=1592532915&rnid=16641811031&ref=sr_st_price-asc-rank&dc&page=1'
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.set_window_size(1024, 600)
driver.maximize_window()
driver.get(url)
soup=bs(driver.page_source,'html.parser')
time.sleep(3)
items = soup.select('div[data-asin]')
for item in items:
print(item['data-asin'])
B07N7CPZ5V
B0856YYBC6
B0856WVLDH
B07N6PYYZL
B07P9WKRHD
B07WCVVBLT
B07Q1D8XWP
.
.
.
Не забудьте установить необходимый пакет: pip install webdriver-manager
Edit2:
Полный код:
from bs4 import BeautifulSoup as bs
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time
url = 'https://www.amazon.sa/s?i=electronics&bbn=16966387031&rh=n:12463162031%2Cn:12463163031%2Cn:16966387031%2Cp_6:A2XPWB6MYN7ZDK&s=price-asc-rank&dc&fst=as:off&qid=1592532915&rnid=16641811031&ref=sr_st_price-asc-rank&dc&page=1'
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.set_window_size(1024, 600)
driver.maximize_window()
driver.get(url)
soup=bs(driver.page_source,'html.parser')
time.sleep(3)
items = soup.select('div[data-asin]')
dasin = [i['data-asin'] for i in items]
items = soup.findAll('span', class_= 'a-price')
price = [float(i.text.split()[0]) for i in items]
info = list(zip(dasin, price))
инфо:
[('B07N7CPZ5V', 3.24),
('B0856YYBC6', 3.97),
('B0856WVLDH', 3.97),
('B07N6PYYZL', 3.97),
('B07P9WKRHD', 4.0),
('B07WCVVBLT', 39.0),
('B07Q1D8XWP', 5.0),
('B07NDY31Q2', 111.93),
('B07N78MQM2', 5.29),
('B083B1K2NF', 5.29),
('B0856T4P15', 5.29),
('B07MMK4KQT', 6.04),
('B083X1YGWK', 6.48),
('B07PKHR3ZZ', 6.61),
('B07NF1C183', 6.61),
('B07P9W46JT', 6.61),
('B07P5HWJK7', 6.61),
('B0857BQGJP', 6.74),
('B085714YYH', 7.39),
('B0856Y5G3J', 7.94),
('B0856XLCQD', 7.94),
('B0856QQWCY', 7.94),
('B07NF3RZN5', 7.94),
('B07NF17XYP', 7.94),
('', 7.94)]