Re: [Tutor] Determine Filetype

2009-09-20 Thread ad...@gg-lab.net
Thankyou guys.

 The search feature of the web site is quite effective! :-)

Alan, i know that every site has a search function, but they're not so
simple to be used if you're looking for a very common word (in) and
don't know other keys to find it.

Regards,
Giorgio
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-19 Thread ad...@gg-lab.net
Hi All,

the solution was in the link i've posted before. If i use:

type = imghdr.what('img.test', image.data)

The imghdr modules ignore the filename (first argument) and takes the
second as a data stream assumed to contain the filetype.

The solution only works for images, but that's what i need. I think
that right now is not possible to generally determine the mimetype for
all types of files on GAE, because some libraries are missing. Anyway,
i'll send a mail to the gae mailing list, and if find a solution i'll
post it here.

Thankyou all guys.

2009/9/19 Sander Sweers sander.swe...@gmail.com:
 On Fri, 2009-09-18 at 16:48 -0400, Kent Johnson wrote:
  So, the __init__.py file of the GAE evinronment's ctypes library is
  broken, as it's importing from a package that doesn't exist. Right?

 Probably ctypes is not supported in GAE, that would be a pretty big
 security hole.

 There is a pure python implementation on pypi [1]. It states it is in
 alpha and missing some features. Never used it myself though...

 Greets
 Sander

 [1] http://pypi.python.org/pypi/pymagic/0.1

 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-19 Thread ad...@gg-lab.net
Ops, i have another question, it seems very simple.

I want to check the extension of an uploaded file. So i've created a
list with allowed extensions:

enabled_ext = ['gif', 'jpeg', 'png', 'bmp', 'tiff']

How can i create a simple if that check if the file ext (file_ext) is
in the list?

I've searched in the python tutorial, but have not been able to find
any example that uses an if statement combined with a list.

Thankyou again

2009/9/19 ad...@gg-lab.net ad...@gg-lab.net:
 Hi All,

 the solution was in the link i've posted before. If i use:

 type = imghdr.what('img.test', image.data)

 The imghdr modules ignore the filename (first argument) and takes the
 second as a data stream assumed to contain the filetype.

 The solution only works for images, but that's what i need. I think
 that right now is not possible to generally determine the mimetype for
 all types of files on GAE, because some libraries are missing. Anyway,
 i'll send a mail to the gae mailing list, and if find a solution i'll
 post it here.

 Thankyou all guys.

 2009/9/19 Sander Sweers sander.swe...@gmail.com:
 On Fri, 2009-09-18 at 16:48 -0400, Kent Johnson wrote:
  So, the __init__.py file of the GAE evinronment's ctypes library is
  broken, as it's importing from a package that doesn't exist. Right?

 Probably ctypes is not supported in GAE, that would be a pretty big
 security hole.

 There is a pure python implementation on pypi [1]. It states it is in
 alpha and missing some features. Never used it myself though...

 Greets
 Sander

 [1] http://pypi.python.org/pypi/pymagic/0.1

 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor


___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-19 Thread ad...@gg-lab.net
if file_ext in enabled_ext

Found an example some seconds ago in another mailing lists. I'm not
able to find the python tutorial that describes this statement. Can
you help me please?

2009/9/19 ad...@gg-lab.net ad...@gg-lab.net:
 Ops, i have another question, it seems very simple.

 I want to check the extension of an uploaded file. So i've created a
 list with allowed extensions:

 enabled_ext = ['gif', 'jpeg', 'png', 'bmp', 'tiff']

 How can i create a simple if that check if the file ext (file_ext) is
 in the list?

 I've searched in the python tutorial, but have not been able to find
 any example that uses an if statement combined with a list.

 Thankyou again

 2009/9/19 ad...@gg-lab.net ad...@gg-lab.net:
 Hi All,

 the solution was in the link i've posted before. If i use:

 type = imghdr.what('img.test', image.data)

 The imghdr modules ignore the filename (first argument) and takes the
 second as a data stream assumed to contain the filetype.

 The solution only works for images, but that's what i need. I think
 that right now is not possible to generally determine the mimetype for
 all types of files on GAE, because some libraries are missing. Anyway,
 i'll send a mail to the gae mailing list, and if find a solution i'll
 post it here.

 Thankyou all guys.

 2009/9/19 Sander Sweers sander.swe...@gmail.com:
 On Fri, 2009-09-18 at 16:48 -0400, Kent Johnson wrote:
  So, the __init__.py file of the GAE evinronment's ctypes library is
  broken, as it's importing from a package that doesn't exist. Right?

 Probably ctypes is not supported in GAE, that would be a pretty big
 security hole.

 There is a pure python implementation on pypi [1]. It states it is in
 alpha and missing some features. Never used it myself though...

 Greets
 Sander

 [1] http://pypi.python.org/pypi/pymagic/0.1

 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor



___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-19 Thread ad...@gg-lab.net
2009/9/19 Sander Sweers sander.swe...@gmail.com:
 On Sat, 2009-09-19 at 17:20 +0200, ad...@gg-lab.net wrote:
 I want to check the extension of an uploaded file. So i've created a
 list with allowed extensions:

 enabled_ext = ['gif', 'jpeg', 'png', 'bmp', 'tiff']

 If this does not change make it s tuple. It does not change what is
 written below.

 How can i create a simple if that check if the file ext (file_ext) is
 in the list?

 The below idle session should help you figure it out.

 enabled_ext = ('gif', 'jpeg', 'png', 'bmp', 'tiff')
 'gif' in enabled_ext
 True

 Greets
 Sander

 A: Because it messes up the order in which people normally read text.
 Q: Why is top-posting such a bad thing?
 A: Top-posting.
 Q: What is the most annoying thing in e-mail?

 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor


Sander, sorry for the top-posting, it's the default in GMail. This is
one of my first times in a mailing list, so it's possible i'm doing
something wrong. Sorry again for it.

I've replied to my mail, as i've found what i was looking for:

if OBJECT in LIST:

Well, but i'd like to read the page of the python tutorial regarding
this. I'm not able to locate it. Can you help me?

Thankyou
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


[Tutor] Determine Filetype

2009-09-18 Thread ad...@gg-lab.net
Hi,

i'm putting file in a DB as BLOB entries. To serve them, i need to
take Content-Type headers.

So, i'm looking for a function that returnes the filetype, given a data str.

I've found many other topics like this in python mail-archive, but any
of them contains the solution.

Can you help me, please?

Thankyou!
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-18 Thread ad...@gg-lab.net
Hi Emile,

that functions requires a filename/path. Just like this one (for images)

http://docs.python.org/library/imghdr.html

Ok, i don't have a filename. I get the file from a BLOB in a db. Any idea?

Thankyou for your precious help.

2009/9/18 Emile van Sebille em...@fenx.com:
 On 9/18/2009 10:05 AM ad...@gg-lab.net said...

 Hi,

 i'm putting file in a DB as BLOB entries. To serve them, i need to
 take Content-Type headers.

 So, i'm looking for a function that returnes the filetype, given a data
 str.

 I've found many other topics like this in python mail-archive, but any
 of them contains the solution.

 Can you help me, please?

 I'd take a look at python-magic at
 http://hupp.org/adam/hg/python-magic/file/d3cd83e5a773 where the example
 shows that you can do:

 # For MIME types
 mime = magic.Magic(mime=True)
 mime.from_file(testdata/test.pdf)
 'application/pdf'


 HTH,

 Emile






 Thankyou!
 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor


 ___
 Tutor maillist  -  tu...@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-18 Thread ad...@gg-lab.net
Oh, i'm sorry.

I've read the README, but haven't noticed that

m.from_buffer(open(testdata/test.pdf).read(1024))

was exactly what i was looking for.

Ok, i'll try it and let you know :D

2009/9/18 Kent Johnson ken...@tds.net:
 On Fri, Sep 18, 2009 at 2:21 PM, ad...@gg-lab.net ad...@gg-lab.net wrote:
 Hi Emile,

 that functions requires a filename/path.

 Did you even look at the link? There is a from_buffer() method also.

 Kent

 2009/9/18 Emile van Sebille em...@fenx.com:

 I'd take a look at python-magic at
 http://hupp.org/adam/hg/python-magic/file/d3cd83e5a773 where the example
 shows that you can do:

 # For MIME types
 mime = magic.Magic(mime=True)
 mime.from_file(testdata/test.pdf)
 'application/pdf'

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Determine Filetype

2009-09-18 Thread ad...@gg-lab.net
Ok, a good news for me:

i've modified my script, adding a:

import magic

line at the top of it. But I got this error:

No module named magic

Ok, so magic is not installed on GAE. I've then uploaded it and it
loaded succesfully. New error:

No module named _ctypes

And, reading the full debug i got this:

File /base/python_dist/lib/python2.5/ctypes/__init__.py, line 10, in module
from _ctypes import Union, Structure, Array

So, the __init__.py file of the GAE evinronment's ctypes library is
broken, as it's importing from a package that doesn't exist. Right?
Maybe i'm doing something wrong.

Thankyou

2009/9/18 ad...@gg-lab.net ad...@gg-lab.net:
 Oh, i'm sorry.

 I've read the README, but haven't noticed that

 m.from_buffer(open(testdata/test.pdf).read(1024))

 was exactly what i was looking for.

 Ok, i'll try it and let you know :D

 2009/9/18 Kent Johnson ken...@tds.net:
 On Fri, Sep 18, 2009 at 2:21 PM, ad...@gg-lab.net ad...@gg-lab.net wrote:
 Hi Emile,

 that functions requires a filename/path.

 Did you even look at the link? There is a from_buffer() method also.

 Kent

 2009/9/18 Emile van Sebille em...@fenx.com:

 I'd take a look at python-magic at
 http://hupp.org/adam/hg/python-magic/file/d3cd83e5a773 where the example
 shows that you can do:

 # For MIME types
 mime = magic.Magic(mime=True)
 mime.from_file(testdata/test.pdf)
 'application/pdf'


___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Still Trying to Understand GAE

2009-09-17 Thread ad...@gg-lab.net
Thankyou all, you're very precious for me.

yeah it seems the development webserver (and the production one) are
importing modules in a non-standard way.

I absolutely don't understand this choice. Why import everything
everytime? Don't you think it makes scripts much more slow?

Giorgio

2009/9/16 Kent Johnson ken...@tds.net:
 On Sun, Sep 13, 2009 at 9:59 AM, ad...@gg-lab.net ad...@gg-lab.net wrote:
 Hi All,

 i've started earning python sone months ago (on Google App Engine
 unfortunately).

 I have some doubts reagrding import, and have asked a similar
 question here months ago, but without finding a solution.

 So:

 with import i can import modules or single functions. And this is ok.
 Then: as i have understood from all the books i readm in each package
 directory i have the __init__.py file that decides what import with
 it. In other words if my package skel is like:

 /gg/
 /gg/sub1/
 /gg/sub1/file.py
 /gg/sub2/
 /gg/sub2/file.py

 and i use import gg, nothing is imported. To import sub1 and sub2, i can:

 - Put in /gg/ a __init__.py file that tells to import them
 - Use from gg import sub1

 Ok now the $1 Billion question: google app engine has the same schema
 than my gg package, an empty __init__.py file, but if i use import
 google it also imports all subdirectories. And i can't understand
 wiìhy it does so.

 In general,
  import foo
 does not import subpackages of foo unless they are specifically
 imported in foo/__init__.py, so dir(foo) will not show the
 subpackages.

 However if you
  import foo
  import foo.bar
 then dir(foo) will include 'bar'. Here is an example from the std lib:

 In [1]: import distutils

 In [2]: dir(distutils)
 Out[2]:
 ['__builtins__',
  '__doc__',
  '__file__',
  '__name__',
  '__package__',
  '__path__',
  '__revision__',
  '__version__']

 In [3]: import distutils.cmd

 In [4]: dir(distutils)
 Out[4]:
 ['__builtins__',
  '__doc__',
  '__file__',
  '__name__',
  '__package__',
  '__path__',
  '__revision__',
  '__version__',
  'archive_util',
  'cmd',
  'dep_util',
  'dir_util',
  'errors',
  'file_util',
  'log',
  'spawn',
  'util']

 My guess is that the startup for GAE is importing the subpackages so
 they then appear as imported modules. To access your sub-package, just
 import it normally.

 Kent

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Still Trying to Understand GAE

2009-09-17 Thread ad...@gg-lab.net
Yes Kent, i'm not worrying about it, i was just trying to find the
reason why they're doing so.

Anyway, i'm a newbye, but the GAE Evinronment is very very difficult
to understand. The only thing is thas in common with the real python
is the sintax.

Thankyou again

2009/9/17 Kent Johnson ken...@tds.net:
 On Thu, Sep 17, 2009 at 8:38 AM, ad...@gg-lab.net ad...@gg-lab.net wrote:
 Thankyou all, you're very precious for me.

 yeah it seems the development webserver (and the production one) are
 importing modules in a non-standard way.

 I absolutely don't understand this choice. Why import everything
 everytime? Don't you think it makes scripts much more slow?

 My guess is that they are importing what they need. It does impact
 startup but hey, if you need it, you need it.

 Try this for comparison: Start Python from a command line, then
 In [5]: import sys

 In [6]: len(sys.modules)
 Out[6]: 323

 I have IPython loaded so this number may be larger than yours. In
 Python 3, with no IPython, I get
 import sys
 len(sys.modules)
 47

 So my advice is, don't worry about it.

 Kent

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Still Trying to Understand GAE

2009-09-15 Thread ad...@gg-lab.net
Hi Wesley!

Thankyou very much for your mail (and i'd like to thankyou in a
special way for your corrections :) ).

 it imports all sub*packages*. don't think directories because the
 import mechanism doesn't work this way. this is likely because there
 are __init__.py files in those subdirectories. another possibility is
 that there are non-empty __init__.py files that do the imports of
 things that you're not expecting.

Ok, i've checked all those files, because in a standard python
evinronment the __init__.py is the only file that can decide what to
import.

If you want to check directly, here you can find the SDK. Just open
the google directory.

http://googleappengine.googlecode.com/files/google_appengine_1.2.5.zip

As i've said, this simple script:

---
#!/usr/bin/python
import google

print Content-Type: text/html
print 

print head
print /head
print body

print google,dir(google)
print /br
print /br

print /body
---

Gives this output:

google ['__builtins__', '__doc__', '__file__', '__name__',
'__package__', '__path__', 'appengine', 'net', 'pyglib']

The google directoy has an empty __init__.py file (well, if we want
to be completely correct it contains some commented -#- lines). Same
for appengine, net and pyglib. As they all have an __init__.py
file, they should be consiedered as modules from the python
interpreter. So, if i run import google it imports all google's
submodules.

Well, now, the problem: if i create another directory (module) in the
google dir, it doesn't get imported. Of course i've put in it some .py
files and an empty __init__.py file.


Thankyou again!
Giorgio

2009/9/13 wesley chun wes...@gmail.com:
 hi Giorgio,

 welcome to Python (whether directly or from GAE!) :-) my comments below.


 with import i can import modules or single functions. And this is ok.

 not quite true. regardless of whether you use import or from-import,
 you're *always* importing (and loading) modules or packages in their
 entirety.

 now, whether you have *access* to entire modules/packages or
 individual attributes (functions, classes, or standard data), is
 another matter -- usually this is a result of using from-import.

 also, the difference between importing and loading is that loading
 only happens the first time you import a module/package. (if you do it
 more than once, e.g., module A imports B and C and module B also
 imports C, the import of C happens twice but the loading happens only
 once.


 if i use import
 google it also imports all subdirectories. And i can't understand
 wiìhy it does so.

 it imports all sub*packages*. don't think directories because the
 import mechanism doesn't work this way. this is likely because there
 are __init__.py files in those subdirectories. another possibility is
 that there are non-empty __init__.py files that do the imports of
 things that you're not expecting.

 hope this helps!
 -- wesley
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Core Python Programming, Prentice Hall, (c)2007,2001
 Python Fundamentals, Prentice Hall, (c)2009
    http://corepython.com

 wesley.j.chun :: wescpy-at-gmail.com
 python training and technical consulting
 cyberweb.consulting : silicon valley, ca
 http://cyberwebconsulting.com

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


[Tutor] Still Trying to Understand GAE

2009-09-13 Thread ad...@gg-lab.net
Hi All,

i've started earning python sone months ago (on Google App Engine
unfortunately).

I have some doubts reagrding import, and have asked a similar
question here months ago, but without finding a solution.

So:

with import i can import modules or single functions. And this is ok.
Then: as i have understood from all the books i readm in each package
directory i have the __init__.py file that decides what import with
it. In other words if my package skel is like:

/gg/
/gg/sub1/
/gg/sub1/file.py
/gg/sub2/
/gg/sub2/file.py

and i use import gg, nothing is imported. To import sub1 and sub2, i can:

- Put in /gg/ a __init__.py file that tells to import them
- Use from gg import sub1

Ok now the $1 Billion question: google app engine has the same schema
than my gg package, an empty __init__.py file, but if i use import
google it also imports all subdirectories. And i can't understand
wiìhy it does so.

Can you help me?

Thankyou

Giorgio
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor