Nao estou conseguindo instalar a biblioteca. sempre retorna ImportError: No module named 'bs4'
Alguma ideia?
Você tem que instalar a biblioteca primeiro, usando ou os pacotes da sua distro ou usando o pip.
Lembrando que quem usar pacotes externos tem que criar um arquivo requirements.txt com todas as dependências do projeto, ou a gente não vai conseguir executar para testar e dar uma nota. Na descrição do EP coloquei alguns links relacionado a isso, mas existe bastante informação na internet de como gerar esses arquivos.
Outra coisa, recomendo fortemente vocês usarem o virtualenv para criarem um ambiente desenvolvimento isolado do sistema.
A ideia de usar o virtualenv é pra poder entregar o próprio ambiente? Ou é pra entregar apenas os arquivos .py e o requirements.txt, independente de se usar o virtualenv ou não?
Eu fiz assim
from bs4 import BeatifulSoup
Só uma observação. Se vc está de fato usando python3 vc deve instalar usando pip3, não pip, pq se não ele instala pro python (que é python2). Eu fiz assim:
pip3 install beautifulsoup4
python3
import bs4
O BeatifulSoup não faz parte da biblioteca padrão do Python. Acho que isso não ficou claro na primeira postagem. Vocês tem que instalar ele separadamente usando o pip (assim como mostrado pelo Thiago Gomes) ou os pacotes que sua distribuição oferece. Eu particularmente prefiro que vocês usem o pip e o virtualenv juntos, pois assim vocês conseguem usar o comando pip freeze > requirements.txt para gerar uma lista de dependências somente do projeto de vocês, ao invés de todas as bibliotecas do Python instaladas no sistema de vocês.
A ideia do virtualenv é vocês terem um ambiente de desenvolvimento controlado, apenas com as bibliotecas que vocês instalaram para o projeto, sem incluir as bibliotecas do sistema. Assim, ao rodar o pip freeze > requirements.txt, vocês tem uma lista somente com os pacotes usados ao invés de todos os pacotes instalados no sistema de vocês. Isso é interessante pois aí vocês tem um ambiente de desenvolvimento que é reprodutível em outras máquinas, ao invés de rodar apenas na máquina de vocês.
Vocês não precisam enviar o ambiente gerado com o virtualenv para a gente, mas para todos aqueles que usaram uma biblioteca externa do Python (como o BeautifulSoup e o Requests), vocês tem que enviar o arquivo requirements.txt. Aqueles que não enviarem esse arquivo vamos assumir que o projeto roda apenas com o biblioteca padrão, e se ele não rodar fica difícil de avaliar ;).
Bom, como acho que é dúvida geral criei um tutorial bem rápido de como usar o pip com o virtualenv. Eu ainda recomendo vocês lerem outras referências, mas acho que com isso dá para começar.
Eu tentei usar o from bs4 import BeatifulSoup mas ele ainda nao reconhece.
tb tentei le o codigo-fonte com split(), mas quando vou usar o decode('utf-8') ele responde
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe1 in position 142: invalid continuation byte
estranhamente seu eu usar decode('utf-16') o codigo fonte fica em chines
Na página dos cardápio é possivel identificar o encode do html.
<META content="text/html; charset=iso-8859-15" http-equiv=Content-Type>
Basicamente é só trocar o "utf-8" pelo "iso-8859-15"
Com relação ao BeautifulSoup, caso queira realmente instalar no sistema, voce pode baixar o tar
http://www.crummy.com/software/BeautifulSoup/bs4/download/4.0/
Descompactar e executar $ python3 setup.py install
Muito obrigado cara
Enquanto é possível instalar diretamente usando o setup.py, eu recomendo que vocês usem o pip para se familiarizarem, pois provavelmente vocês vão precisar para os próximos EPs ;)... Além disso, a única alternativa que vocês tem para criar um arquivo requirements.txt fora usando o pip é se vocês criarem na mão (não é difícil, mas a chance de dar erro é bem maior).