Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. import requests
  2. import base64
  3. from bs4 import BeautifulSoup
  4. import json
  5. from base64 import b64encode
  6.  
  7.  
  8. kategoria= input("Podaj kategorie ktora chcesz przeszukac:")
  9. url = 'https://www.morele.net/wyszukiwarka/0/0/,,,,,,,,,,,,/1/?q='+kategoria
  10. print(url)
  11. response = requests.get(url)
  12. soup = BeautifulSoup(response.text, "html5lib")
  13. body = soup.body
  14. tytuly = body.find_all('h2', {'class':'cat-product-name'})
  15. ceny = body.find_all('div', {'class' : 'price-new'})
  16. parametry = body.find_all('div', {'class': 'cat-product-feature'})
  17. zdjecia = body.find_all('a',{'class': 'cat_product_image'})
  18.  
  19.  
  20. class Base64Encoder(json.JSONEncoder):
  21. def default(self,o):
  22. if isinstance(o,bytes):
  23. return b64encode(o).decode()
  24. return json.JSONEncoder.default(self,0)
  25.  
  26. def get_as_base64(url):
  27. return base64.b64encode(requests.get(url).content)
  28.  
  29. tablicaCen = []
  30. for cena in ceny:
  31. tablicaCen.append(cena)
  32.  
  33. tablicaTytulow = []
  34. for tytul in tytuly:
  35. tablicaTytulow.append(tytul)
  36.  
  37. tablicaParametrow = []
  38. for parametr in parametry:
  39. tablicaParametrow.append(parametr)
  40.  
  41. tablicaZdjec = []
  42. for zdjecie in zdjecia:
  43. tablicaZdjec.append(zdjecie)
  44.  
  45. jsony = [{"Tytul": t, "Cena": c, "parametr": p, "Zdjecie": get_as_base64(z)} for t,c,p,z in zip(tablicaTytulow,tablicaCen,tablicaParametrow,tablicaZdjec)]
  46.  
  47. with open('data.json','w',encoding='utf-8') as f:
  48. json.dump(jsony,f,ensure_ascii=False,indent=4,cls=Base64Encoder)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement