selenium webdriver
selenium.webdriver ActionChains
openpyxl workbook
base_urls = []
shop_names = []
m_names = []
prices = []
com_names = []
offers = []
driver_base(url):
driver = webdriver.Chrome()
driver.get(url)
driver.set_window_size(=, =, =)
driver.implicitly_wait()
driver
p_url(driver,shop_page):
input = driver.find_element_by_id()
input.send_keys()
botton = driver.find_element_by_xpath()
botton.click()
source = driver.find_element_by_xpath()
target = driver.find_element_by_class_name()
actions = ActionChains(driver)
actions.drag_and_drop(source, target)
actions.perform()
base_url_0 = driver.find_elements_by_xpath()
num (,(base_url_0)):
base_urls.append(base_url_0[num].get_attribute())
shop_page != :
pn_next = driver.find_element_by_class_name()
pn_next.click()
shop_page = shop_page - :
source = driver.find_element_by_xpath()
target = driver.find_element_by_class_name()
actions = ActionChains(driver)
actions.drag_and_drop(source, target).perform()
base_url_1 = driver.find_elements_by_xpath()
num (, (base_url_1)):
base_urls.append(base_url_1[num].get_attribute())
base_url_1.clear()
:
(.format( shop_page))
:
(.format(shop_page))
base_urls_1 = ((base_urls))
(.format((base_urls_1)), , base_urls_1)
base_urls_1
p_data(base_urls_1):
y_num = (base_urls_1)
href base_urls_1:
y_num =y_num - (.format(y_num))
href_driver = webdriver.Chrome()
href_driver.get(href)
href_driver.set_window_size(=, =, =)
:
shop_name = href_driver.find_element_by_xpath()
shop_name = shop_name.text
m_name = href_driver.find_element_by_xpath()
m_name = m_name.text
price = href_driver.find_element_by_xpath()
price = price.text
com_num = href_driver.find_element_by_xpath()
com_num = com_num.text
offer = href_driver.find_element_by_id()
offer = offer.text
shop_names.append(shop_name)
m_names.append(m_name)
prices.append(price)
com_names.append(com_num)
offers.append(offer)
href_driver.close()
:
()
:
save_data(shop_names, m_names, prices, com_names, offers)
save_data(shop_names,m_names,prices,com_names,offers):
wb = workbook.Workbook()
ws = wb.active
ws.append([])
ws.append([,, , , ,])
n ((offers)):
ws.append([n + ,shop_names[n],m_names[n],prices[n],com_names[n],offers[n]])
wb.save()
__name__ == :
shop_page = (())
url = driver = driver_base(url)
base_urls_1 = p_url(driver,shop_page)
p_data(base_urls_1)
driver.close()