I'm looking for a programmatic way to access Ensembl or UCSC's genome browser using something like python or ruby. Perl is just not my thing, sadly. PyCogent seems to have something that I have not yet tested properly, but just wanted to ping the community before going ahead and coding something that might already exist.
The two ones I know under current development are PyCogent:
I haven't played with either but both look useful.
I looked into this myself before I resigned myself to using the Perl APIs. I wouldn't be too down on them as they have a lot of functionality (but still depend on BioPerl1.5 !).
You can access the Ensembl database directly through their MySQL server, but building the queries for the very complex schema is very time consuming. I can see them coming under increasing pressure to provide support for other languages (Python certainly would be very popular) but they have a lot of work to do as it is and I think an initiative like that would probably require extra funding.
You can access the MySQL server using the details here http://www.ensembl.org/info/data/mysql.html
There is certainly a lot of scope for writing libraries. However, I tend to agree with Ian: sometimes, when a working tool already exists, it's better to just swallow your disdain and work out how to use it.
In theory, you could try to use the Ensembl Java APIs with Python throught the Jython interpreter. However, I don't recommend you that, for you sanity.
I follow the pygr's mailing list and they have released a new tutorial on their Ensembl APIs lately, which means that they are stil developing that part. However, I have never tried that module, when I looked at it one year ago it didn's seem complete yet, I am not sure whether it is complete or not now.