How do I ignore the errors thrown by the DB api?

2006-06-13 Thread fyleow
Here's the code I have in place right now.

cursor.execute("SELECT link FROM feeds_feed WHERE link=%s",
(self.link,))
db.commit()

if cursor.rowcount == 0:
cursor.execute("INSERT INTO feeds_feed (release_group,
title, link, category, pub_date) VALUES (%s, %s, %s, %s, now())",
(self.group, self.title, self.link, self.category,))
db.commit()
print "Inserting"
else:
print "Already Exists"

Basically the uniqueness of the link attribute is enforced in the
database so if I try to insert a value that already exists I get an
error that breaks the program.  Right now I do a SELECT query first to
check if the value already exists.  The insert is only executed only if
the value doesn't already exist.

This is a really bad way of doing things because I'm accessing the DB
way more than I need to.  It would be great if I could just insert
values into the DB and let the uniqueness check at the DB level to
either add or refuse the duplicate value.  I'm not really interested if
a particular value is rejected or added, I just want the most efficient
way to insert values.

I would really appreciate any suggestions or tips.

Thanks.

-- 
http://mail.python.org/mailman/listinfo/python-list


Help! Identical code doesn't work in Wing IDE but does in Komodo.

2006-04-20 Thread fyleow
I create a new Python file with the following using Wing IDE.

import feedparser
d = feedparser.parse("http://feedparser.org/docs/examples/atom10.xml";)
print d.feed.title

I get this error when I debug.

AssertionError:

Traceback (innermost last):

File "c:\Documents and Settings\abc\Application Data\Wing IDE
2\untitled-1.py", line 1, in ?
  import feedparser
File "c:\Documents and Settings\abc\Application Data\Wing IDE
2\untitled-1.py", line 2, in ?
  d =
feedparser.parse("http://feedparser.org/docs/examples/atom10.xml";)
File "C:\Python24\Lib\feedparser.py", line 2611, in parse
  saxparser.parse(source)
File "C:\Python24\Lib\xml\sax\expatreader.py", line 107, in parse
  xmlreader.IncrementalParser.parse(self, source)
File "C:\Python24\Lib\xml\sax\xmlreader.py", line 123, in parse
  self.feed(buffer)
File "C:\Python24\Lib\xml\sax\expatreader.py", line 207, in feed
  self._parser.Parse(data, isFinal)
File "C:\Python24\Lib\xml\sax\expatreader.py", line 639, in EndElement
File "C:\Python24\Lib\xml\sax\expatreader.py", line 348, in
end_element_ns
  self._cont_handler.endElementNS(pair, None)
File "C:\Python24\Lib\feedparser.py", line 1403, in endElementNS
  self.unknown_endtag(localname)
File "C:\Python24\Lib\feedparser.py", line 476, in unknown_endtag
  method()
File "C:\Python24\Lib\feedparser.py", line 1193, in _end_title
  value = self.popContent('title')
File "C:\Python24\Lib\feedparser.py", line 700, in popContent
  value = self.pop(tag)
File "C:\Python24\Lib\feedparser.py", line 685, in pop
  contentparams = copy.deepcopy(self.contentparams)
File "C:\Python24\Lib\copy.py", line 193, in deepcopy
  rv = reductor(2)
File "C:\Python24\Lib\feedparser.py", line 233, in __getattr__
  assert not key.startswith('_')

With the exact same line of code in Komodo I get the correct output
which is "Sample Feed"

Any idea what's wrong?

-- 
http://mail.python.org/mailman/listinfo/python-list


i18n hell

2006-04-23 Thread fyleow
I just spent hours trying to figure out why even after I set my SQL
table attributes to UTF-8 only garbage kept adding into the database.
Apparently you need to execute "SET NAMES 'utf8'" before inserting into
the tables.

Does anyone have experience working with other languages using Django
or Turbogears?  I just need to be able to retrieve and enter text to
the database from my page without it being mangled.  I know these
frameworks employ ORM so you don't need to write SQL and that worries
me because I tried this on Rails and it wouldn't work.

Thanks.

-- 
http://mail.python.org/mailman/listinfo/python-list


Elegent solution to replacing ' and " ?

2006-05-05 Thread fyleow
I'm trying to replace the ' and " characters in the strings I get from
feedparser so I can enter it in the database without getting errors.
Here's what I have right now.

self.title = entry.title.encode('utf-8')
self.title = self.title.replace('\"', '\\\"')
self.title = self.title.replace('\'', '\\\'')

This works just great but is there a more elegent way to do this?  It
looks like maybe I could use the translate method but I'm not sure.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Elegent solution to replacing ' and " ?

2006-05-06 Thread fyleow
I'm using PyGreSQL on a PostgreSQL db.

I didn't even include my SQL but Serge guessed right and that's what I
had.  I changed it and it works now.

Thanks for the help! :)

-- 
http://mail.python.org/mailman/listinfo/python-list


Should I learn Python instead?

2006-04-14 Thread fyleow
Hi guys,

I'm a student/hobbyist programmer interested in creating a web project.
 It's nothing too complicated, I would like to get data from an RSS
feed and store that into a database.  I want my website to get the
information from the database and display parts of it depending on the
criteria I set.

I just finished an OO programming class in Java and I thought it would
be a good idea to do this in C# since ASP.NET makes web applications
easier than using Java (that's what I've heard anyway).  I thought it
would be easy to pick up since the language syntax is very similar but
I'm getting overwhelmed by the massive class library.  MSDN docs are
very good and thorough but the language just seems a little unwieldy
and too verbose.

This is how to access an RSS feed and create an XML document to
manipulate it.

System.Net.WebRequest myRequest = System.Net.WebRequest.Create("//feed
url here");
System.Net.WebResponse myResponse = myRequest.GetResponse();
System.IO.Stream rssStream = myResponse.GetResponseStream();
System.Xml.XmlDocument rssDoc = new System.Xml.XmlDocument();

rssDoc.Load(rssStream);

Here's PHP.

$rss_feed = file_get_contents($rss_url);

I realize that learning the library is part of the process, but as a
beginner I appreciate simplicity.  Is Python easier than C#?  Can
someone show how to access an XML document on the web and have it ready
to be manipulated for comparison?  Any other advice for a newbie?

Thanks.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Should I learn Python instead?

2006-04-15 Thread fyleow
Thanks guys.  I picked up the Apress book on Python and downloaded the
Komodo IDE trial to get me started.

I'm going to try using Django to build my website and since my brother
already has hosting I'll just borrow some space.
He does PHP for a living, so it would probably be better for me to use
that instead.

Unfortunately, I'm allergic to dollar signs ;)

-- 
http://mail.python.org/mailman/listinfo/python-list