python-neocities is a Python wrapper of the NeoCities.org REST API.
NeoCities.org is a FLOSS service which offers 20 Megabytes of gratis and ad-free hosting inspired by GeoCities. I really liked their approach so I decided to contribute this little API.
To install it, type python setup.py install
or make install
.
The unit tests rely on having a NeoCities.org account. To run them, type
NEOCITIES_USER=user NEOCITIES_PASS=pass make test
But then again, I wouldn't recommend running them at all since they might make you seem suspicious to NC's admins and the API is simple enough.
First, you must initialize a NeoCities object with
import neocities
nc = neocities.NeoCities('username', 'password')
(Passing a valid username and password is not necessary if you are only going
to use the info
call)
After you've done that, you can query NeoCities for information about a specific site with:
response = nc.info('sitename')
If you have provided correct login credentials, you can also query NeoCities for your own site's info with
response = nc.info()
You can upload files with
nc.upload(('name_on_disk', 'name_on_server'), ...)
Where name_on_server
is the name you want the file to have on the NeoCities
server and name_on_disk
is the name (path) of the file on your disk.
You can delete a file remotely with
nc.delete('filename1', ...)
To make sure you are not doing something wrong, the InvalidRequestError
exception will be fired when you do. It has a status_code
attribute which
contains the status code returned by your request. For a list of status codes
(useful to debug your requests), check out
this Wikipedia page.