scraping from bundes-telefonbuch.de with python
hello, i'm new on this group, and quiet new to python!
i'm trying to scrap some adress data from bundes-telefonbuch.de but i
run into a problem:
the link is like this:
http://www.bundes-telefonbuch.de/cgi-btbneu/chtml/chtml?WA=20
and it is basically the same for every search query.
thus i need to submit post data to the webserver, i try to do this
like this:
opener = urllib2.build_opener()
opener.addheaders = [('User-Agent', 'Mozilla/5.0 (compatible;
Konqueror/3.5; Linux) KHTML/3.5.4 (like Gecko)')]
urllib2.install_opener(opener)
data = urllib.urlencode({'F0': 'mySearchKeyword','B': 'T','F8': 'A ||
G','W': '1','Z': '0','HA': '10','SAS_static_0_treffer_treffer': 'Suche
starten','S': '1','translationtemplate': 'checkstrasse'})
url = 'http://www.bundes-telefonbuch.de/cgi-btbneu/chtml/chtml?WA=20'
response = urllib2.urlopen(url, data)
this returns a page saying i have to reenter my search terms..
what's going wrong here?
Thanks!!
--
http://mail.python.org/mailman/listinfo/python-list
float from numbers in text file
hello, i have a text file that contains gps coordinates that i want to load into my mysql database the file is basically in this format: 52.2375412 5.1802704 i basically tried this: lat =0.0 for line in f: lat = float(line) but this gives an error.. does anyone know what i should to do? thanks, -- http://mail.python.org/mailman/listinfo/python-list
Re: float from numbers in text file
On Jun 21, 4:00 pm, Stephen Hansen wrote:
> On 6/21/10 3:54 PM, davidgp wrote:
>
> > i basically tried this:
> > lat =0.0
> > for line in f:
> > lat = float(line)
>
> > but this gives an error.. does anyone know what i should to do?
> > thanks,
>
> "An error"?
>
> Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29)
> [GCC 4.2.1 (Apple Inc. build 5646)] on darwin
> Type "help", "copyright", "credits" or "license" for more information.>>> f =
> open("test.txt", "r")
> >>> for line in f:
>
> ... print float(line)
> ...
> 52.2375412
> 5.1802704
>
> Always include what the actual error is that you're running into.
>
> --
>
> Stephen Hansen
> ... Also: Ixokai
> ... Mail: me+list/python (AT) ixokai (DOT) io
> ... Blog:http://meh.ixokai.io/
>
> signature.asc
> < 1KViewDownload
sorry :)
invalid literal for long() with base 10: '51.9449702'
this is the error i'm getting when i use long(line)
and this is the error for float(line)
invalid literal for float(): not found
cheers,
--
http://mail.python.org/mailman/listinfo/python-list
Re: float from numbers in text file
On Jun 21, 4:18 pm, Stephen Hansen wrote:
> On 6/21/10 4:03 PM, davidgp wrote:
>
>
>
> > sorry :)
>
> Okay, I should be more specific: include full tracebacks and some real
> copied and pasted code :) Don't throw away nice debugging information
> Python gave you, feed it to us.
>
> > invalid literal for long() with base 10: '51.9449702'
> > this is the error i'm getting when i use long(line)
>
> Yes, "51.9449702" is an invalid literal for long. Long produces
> integers: no decimal points.
>
> However:
>
> > and this is the error for float(line)
> > invalid literal for float(): not found
>
> Its a perfectly valid literal for float:>>> float('51.9449702')
>
> 51.9449702
>
> So if you're getting that error, you're doing something else that you're
> not telling us.
>
> I suspect, somehow (I'd have to see your code to be sure), that your
> "line" in the second case doesn't have that number. Try it in the
> interactive interpreter. float('51.9449702') works fine. I suspect your
> "line", for whatever reason, contains the string "not found", as in:
>
> >>> float('not found')
>
> Traceback (most recent call last):
> File "", line 1, in
> ValueError: invalid literal for float(): not found
>
> --
>
> Stephen Hansen
> ... Also: Ixokai
> ... Mail: me+list/python (AT) ixokai (DOT) io
> ... Blog:http://meh.ixokai.io/
>
> signature.asc
> < 1KViewDownload
ah, i see :P
float("45.34") or whatever does work fine, but the problem is that i'm
reading it from a text file. so somehow it is not a real string or
whatever..
here's a part of the code:
f = open ('/home/david/out.txt', 'r')
for line in f:
if tel ==6:
buf = line.replace('\n', '')
lat = float(buf)
if tel ==7:
buf = line.replace('\n', '')
lng = float(buf)
basically it goes wrong in the last part where i try to convert the
line to a float..
i'm 100% sure that it's getting a number, not a text string
cheers!
--
http://mail.python.org/mailman/listinfo/python-list
Re: float from numbers in text file
On Jun 21, 5:13 pm, Stephen Hansen wrote:
> On 6/21/10 4:26 PM, davidgp wrote:
>
>
>
>
>
> > ah, i see :P
> > float("45.34") or whatever does work fine, but the problem is that i'm
> > reading it from a text file. so somehow it is not a real string or
> > whatever..
> > here's a part of the code:
> > f = open ('/home/david/out.txt', 'r')
>
> > for line in f:
> > if tel ==6:
> > buf = line.replace('\n', '')
> > lat = float(buf)
> > if tel ==7:
> > buf = line.replace('\n', '')
> > lng = float(buf)
>
> > basically it goes wrong in the last part where i try to convert the
> > line to a float..
> > i'm 100% sure that it's getting a number, not a text string
>
> First: you don't have to strip \n's. Try float("45.43\n")
>
> Second: this code, as is, can't run to show us the problem because
> there's this "tel" business and I don't know what it is. But I'll tweak
> it a bit and:
>
> f = open ('/Users/ixokai/out.txt', 'r')
>
> tel = 6
> for line in f:
> if tel == 6:
> buf = line.replace('\n', '')
> lat = float(buf)
> print lat
> if tel == 7:
> buf = line.replace('\n', '')
> lng = float(buf)
>
> And it works fine with a dummy data file I have. So... the problem is
> somewhere else. Its either in your data file, or some other logic going
> on (maybe something related to this 'tel' thing, I don't know).
>
> Are you sure there's no lines in out.txt which have, say, some text (on
> the left end)? Or maybe some blank lines?
>
> Maybe you should send the whole file and the data.txt if you don't see
> where the problem is.
>
> --
>
> Stephen Hansen
> ... Also: Ixokai
> ... Mail: me+list/python (AT) ixokai (DOT) io
> ... Blog:http://meh.ixokai.io/
>
> signature.asc
> < 1KViewDownload
i found the error! apparently something was going wrong in the loop..
thanks for the help!
--
http://mail.python.org/mailman/listinfo/python-list
