Advertisement
vinissh

Untitled

Nov 1st, 2019
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.55 KB | None | 0 0
  1. import requests
  2. import time
  3. from bs4 import BeautifulSoup
  4.  
  5.  
  6. def  http_post(url,buscar_livro):
  7.     payload={
  8.         'palavra': buscar_livro,
  9.     'enviar': 'Buscar'
  10.     }
  11.  
  12.     try:
  13.         return requests.post(url,data=payload)
  14.  
  15.     except (requests.exceptions.HTTPError, requests.exceptions.RequestException,requests.exceptions.ConnectionError,requests.exceptions.Timeout) as e:
  16.         print(str(e))
  17.         pass
  18.     except Exception as e:
  19.         raise "Algo pode ter dado errado!"
  20.     return none
  21.  
  22. def parse_html(content):
  23.    
  24.     soup = BeautifulSoup(content,'lxml')
  25.     produtos = soup.find_all('table')[10].find_all('td')
  26.  
  27.  
  28.     lista_produtos = []
  29.     url = "https://novatec.com.br/"
  30.     url_capa = ''
  31.     url_produto = ' '
  32.    
  33.     for produto in produtos:
  34.         tag_a = produto.find('a')
  35.         if tag_a:
  36.             if tag_a.next_element.nextelement.img.name == 'img':
  37.                 url_capa = '{0}{1}'.format(url,tag_a.img.get)
  38.            
  39.         for string  in produto.stripped_strings:
  40.             if(string =='Esgostado'):
  41.                 continue
  42.             lista_produtos.append(string)
  43.  
  44.     with open('produtos.html','w') as prod:
  45.         prod.write(str(lista_produtos))        
  46. '''
  47.    f = open('td.html','w',encoding='utf-8')
  48.    for produto in produtos:
  49.        f.write(str(produto))
  50.        f.write('\n\n\n')
  51.    f.close()
  52. '''
  53. if __name__ == '__main__':
  54.     url =  "https://novatec.com.br/busca.php"
  55.     buscar_livro =  "Php "
  56.     r = http_post(url,buscar_livro)
  57.     if r:
  58.         parse_html(r.text)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement