Вы находитесь на странице: 1из 16

Reviso Strings

<nmero>

Texto
difcil comunicar-se sem palavras
Entre os vrios tipos de dados, um dos mais importantes o texto ou string
o
Obs.: no to fcil manipular strings em algumas linguagens
Vamos procurar onde esto as informaes num texto == scraping
E iremos aprender um dos conceitos mais importantes de orientao objetos:
mtodos

Starbuzz Caf
Cdigo Starbuzz atual

O CEO quer apenas o preo


O preo est embutido no HTML
Este um texto HTML bruto, que o formato das pginas Web
O preo est embutido no HTML

Strings
Strings so seqncias de caracteres
Como obter apenas o preo?

Strings
Strings

Fatiamento
Fatia do primeiro nmero at antes do segundo

No inclui o segundo nmero!


Fatiamento

Fatiamento

O CEO est feliz!


No existem perguntas idiotas
Posso colocar qualquer pgina web neste cdigo?

o
Sim. Fique vontade, mas no esquea o decode
Por exemplo, o site abaixo usa iso8859
http://www.ime.usp.br/~pf/algoritmos/dicios/br
O que urllib.request faz?

o Permite conversar com a internet


Posso acessar uma pgina diretamente no navegador?

o Sim. Digite no modo interativo import antigravity

Descontos para clientes fiis


Programa de fidelidade
No deu certo! Apareceu bean no lugar do preo. Por qu ser?
O preo se moveu
As pginas so diferentes e o preo muda de posio na string

Os dados do Python so
espertos

As linguagens de programao fornecem uma funcionalidade embutida nos dados


para ajud-lo
Os dados do Python so espertos: eles podem fazer coisas

Mtodo find
Mtodos find para strings
Mtodo find

S quando for menos que 4.74


S quando for menos que 4.74
Strings so diferentes de nmeros

Convertendo para float


Ele pode ficar testando o preo?
Ele pode ficar tentando?
O CEO est muito feliz!

Aconteceu algum problema


Acusao de DDoS
DDoS Distributed Denial of Service
Recebemos uma mensagem

Biblioteca time
Hora atual em segundos time.clock()
Estou no horrio de vero? time.daylight()
Dormir alguns segundos time.sleep(secs)
Fuso horrio time.timezone()

10 minutos entre cada acesso

Resumo
Strings so seqncias de caracteres
Acessamos os caracteres individuais pelo ndice, que comea com zero
Mtodos so funes embutidas nas variveis
Existem bibliotecas de programao com cdigo pronto
Os dados possuem um tipo, como int ou string

Ferramentas Python
texto[4] acessa o 5 caracter
texto[4:9] acessa do 5 ao 9 caracter
O mtodo texto.find() procura um substring
float() converte algo para ponto flutuante
Bibliotecas: urllib.request e time

Вам также может понравиться