Advertisement
Guest User

Untitled

a guest
Oct 24th, 2018
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.06 KB | None | 0 0
  1.  
  2. import xlrd
  3. import xlwt
  4. import time
  5. import datetime
  6. from selenium import webdriver
  7. from selenium.webdriver.common.keys import Keys
  8. from selenium.webdriver.support.select import Select
  9.  
  10. # Open a workbook
  11. workbook = xlrd.open_workbook('items.xls')
  12.  
  13. # Loads only current sheets to memory
  14. workbook = xlrd.open_workbook('items.xls', on_demand=True)
  15.  
  16. # Load a specific sheet by name
  17. worksheet = workbook.sheet_by_name('Sheet1')
  18.  
  19. # Load a specific sheet by index
  20. worksheet = workbook.sheet_by_index(0)
  21.  
  22. USERNAME = '58079'
  23. PASSWORD = 'globe2013'
  24. # HSN = 'hsn2371300'
  25.  
  26. driver = webdriver.Chrome(executable_path=r'../assets/chromedriver.exe')
  27. # driver = webdriver.Firefox(executable_path=r'geckodriver.exe')
  28. # driver = webdriver.Ie(executable_path=r'IEDriverServer.exe')
  29.  
  30. now = datetime.datetime.now().strftime('%d-%m-%Y')
  31.  
  32. # Initialize a workbook
  33. book = xlwt.Workbook(encoding="utf-8")
  34.  
  35. # Add a sheet to the workbook
  36. sheet1 = book.add_sheet("Results", cell_overwrite_ok=True)
  37.  
  38. # Write to the sheet of the workbook
  39. sheet1.write(0, 0, "Tyre24.de [EUR]")
  40. sheet1.write(0, 1, now)
  41.  
  42. # logowanie
  43. driver.get('https://tyre24.alzura.com/de/de')
  44. time.sleep(1)
  45. driver.find_element_by_name('userid').send_keys(USERNAME)
  46. driver.find_element_by_name('password').send_keys(PASSWORD)
  47. driver.find_element_by_css_selector('input.widget-login-button-input').click()
  48. time.sleep(1)
  49. # logowanie
  50. # szukanie
  51. driver.get('https://tyre24.alzura.com/de/de/search/tyre/origin/profi#/?init=1&showTab=1&listView=1&rownum=30&minTyres=4')
  52. time.sleep(2)
  53. x = 0
  54. y = 1
  55. n = 1
  56. print(datetime.datetime.now().strftime('%d-%m-%Y %H:%M:%S'))
  57. print('ilosc pozycji:', worksheet.nrows)
  58. for i in range(worksheet.nrows):
  59.     HSN = worksheet.cell(x, 0).value
  60.     try:
  61.         driver.find_element_by_id('input-search-1').clear()
  62.         driver.find_element_by_id('input-search-1').send_keys(HSN)
  63.         driver.find_element_by_id('profi-search-button').click()
  64.         time.sleep(2)
  65.     except:
  66.         driver.get('https://tyre24.alzura.com/de/de/search/tyre/origin/profi#/?init=1&showTab=1&listView=1&rownum=30&minTyres=4')
  67.         time.sleep(2)
  68.         driver.find_element_by_id('input-search-1').clear()
  69.         driver.find_element_by_id('input-search-1').send_keys(HSN)
  70.         driver.find_element_by_id('profi-search-button').click()
  71.         time.sleep(2)
  72. # cena
  73.     try:
  74.         table_price = driver.find_element_by_css_selector('table.si-price-table')
  75.         hsn = HSN.replace('hsn', '')
  76.         result = table_price.find_element_by_css_selector('span.ng-binding').text
  77.         result = result.replace('.', ',')
  78.         print(n, ':', hsn, result)
  79.         sheet1.write(y, 0, hsn)
  80.         sheet1.write(y, 1, result)
  81.     except:
  82.         hsn = HSN.replace('hsn', '')
  83.         result = 'brak'
  84.         print(n, ':', hsn, result)
  85.         sheet1.write(y, 0, hsn)
  86.         sheet1.write(y, 1, result)
  87.     x = x + 1
  88.     y = y + 1
  89.     n = n + 1
  90. # szukanie
  91. # Save the workbook
  92. book.save("results.xls")
  93. driver.close()
  94. print(datetime.datetime.now().strftime('%d-%m-%Y %H:%M:%S'))
  95.  
  96. # TODO: zapis co xls lub csv
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement