Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #40527

Re: Downloading a file form a displayed table

References <f99ae3d5-6f1f-4dfc-84da-78b758a5147a@googlegroups.com> <ebde8f97-46c4-49c6-a0e1-7056455352d7@googlegroups.com>
Date 2013-03-05 13:38 +0000
Subject Re: Downloading a file form a displayed table
From "Vytas D." <vytasd2013@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.2884.1362490737.2939.python-list@python.org> (permalink)

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Hi,

It is really complicated to reproduce the errors you get by running your
code since it involves database queries.

Though one thing that really needs your attention is how you handle the
results from os.walk(path).

Dave Angel told you already that: "But os.walk() doesn't return a filename.
It returns a tuple.".

To show where you are wrong I have create the directory structure:
Folder "folder1" that has files "file4.txt" and "file3.txt" inside.

In Python 2.6.5:
>>> import os
>>> for filename in os.walk('folder1'):
...  print(filename)
...
('folder1', [], ['file4.txt', 'file3.txt'])
>>>

So your code is treating results from os.walk() incorrectly. You get tuple,
so extract data you need from it first. In case you don't know how:

Print files only (no directories. Adapt code to your needs):
>>> for result in os.walk('folder1'):
...    for filename in result[2]:
...      print(filename)
...
file4.txt
file3.txt

In http://docs.python.org/2/library/os.html you will find:
os.walk(top, topdown=True, onerror=None, followlinks=False)
Generate the file names in a directory tree by walking the tree either
top-down or bottom-up. For each directory in the tree rooted at directory
top (including top itself), it yields a 3-tuple (dirpath, dirnames,
filenames).
...

Vytas


On Tue, Mar 5, 2013 at 1:01 PM, Νίκος Γκρ33κ <nikos.gr33k@gmail.com> wrote:

> Please help me correct thois code, iam tryign ti for hours and i cant seem
> to get it working....it irritates me....
>
> path = "/home/nikos/public_html/data/files/"
> for filename in os.walk(path):
>         try:
>                 #find the needed counter for the page URL
>                 cur.execute('''SELECT ID FROM files WHERE URL = %s''',
> (filename,) )
>                 data = cur.fetchone()        #URL is unique, so should
> only be one
>
>                 if not data:
>                         #first time for page; primary key is automatic,
> hit is defaulted
>                         cur.execute('''INSERT INTO files (URL, lastvisit)
> VALUES (%s, %s)''', (filename, date) )
>                         cID = cur.lastrowid        #get the primary key
> value of the new record
>                 else:
>                         #found the page, save primary key and use it to
> issue hit UPDATE
>                         cID = data[0]
>                         cur.execute('''UPDATE files SET hits = hits + 1,
> lastvisit = %s WHERE ID = %s''', (date, cID)
>         except MySQLdb.Error, e:
>                 print ( "Query Error: ", sys.exc_info()[1].excepinfo()[2] )
> --
> http://mail.python.org/mailman/listinfo/python-list
>

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 01:00 -0800
  Re: Downloading a file form a displayed table Dave Angel <davea@davea.name> - 2013-03-05 04:45 -0500
    Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 01:48 -0800
      Re: Downloading a file form a displayed table Dave Angel <davea@davea.name> - 2013-03-05 05:05 -0500
    Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 01:48 -0800
  Re: Downloading a file form a displayed table Dave Angel <davea@davea.name> - 2013-03-05 04:51 -0500
    Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 02:24 -0800
      Re: Downloading a file form a displayed table Lele Gaifax <lele@metapensiero.it> - 2013-03-05 12:29 +0100
    Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 02:24 -0800
  Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 05:01 -0800
    Re: Downloading a file form a displayed table Joel Goldstick <joel.goldstick@gmail.com> - 2013-03-05 08:38 -0500
    Re: Downloading a file form a displayed table "Vytas D." <vytasd2013@gmail.com> - 2013-03-05 13:38 +0000
      Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 06:37 -0800
      Re: Downloading a file form a displayed table Νίκος Γκρ33κ <nikos.gr33k@gmail.com> - 2013-03-05 06:37 -0800
  Re: Downloading a file form a displayed table Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-03-05 14:04 +0000

csiph-web