Recently proxy support was added to [python-wordpress-xmlrpc(https://github.com/maxcutler/python-wordpress-library) library. Based on this library, I was able to clean-up my old scripts to communicate with wordpress via xmlrpc client. This client read the environment variable
http_proxy. One can use also use
--proxy in command line. Set the
http_proxy variable in bash file and
source ~/.bashrc. Here is the repository of this script. This package is also available on pypi as twordpress. I can not think of a better name. Use
pip to install the package. I will assume that you have installed the package using
python setup.py install command. This repository contains working version of python-wordpress-xmlrcp library of Max Cutler). It uses pandoc to convert markdown to html and vice versa. Since pandoc is very versatile tool, I removed html2text.py script of late Aron Swartz. Unfortunately
pandoc is not python based and installing it would bring in whole Haskell stuff (who care inside IIT about installing). It does not work with python3.
You need to create
~/.wordpressrc file with entries shown below. If you want to keep this config file in some other location, you can pass the location to the script by using
--config filename argument.
[blog0] url=http://blog2.wordpress.com username=user2 password=passowrd [blog1] url=http://blog1.wordpress.com username=user1 password=password
[blog0] is default blog.
- To fetch all blogs from blog0twordpress –blog 0 –fetch all
- To fetch blog with matching titles. .twordpress –blog 0 –fetch “some pattern”
- To fetch recent posts from default blog (i.e. blog0)twordpress
--blog 0 to
--blog 1 to work on blog1. It will create a directory for each post and save the content in
content.md (markdown) format inside that directory. A html file
content.html is also generated for your reference. Later version might support sending html file to wordpress so that one can generate his own html file from the tool he likes.
Edit and post
Edit the download
content.md, and run the following command
./twordpress --blog 0 --update path_to_content.md
(Make sure to give the right blog no). For a new post. Create a new post with header similar to one of the content.md file. An example is following.
Creating new post
A minimal post looks like following.
title: My awesome post
My awesome content.
Metadata of post is stored at the beginning of the post between
~~~ tags. This is jekyll format of writing post. If one is managing github-pages, the same post can be posted to wordpress. One can edit the metadata to change the status of post from ‘publish’ to draft etc. More tags can be added or deleted. Same with categories. Following features are most likely to be added soon.
- Downloading media for each post.
- Ability to embed offline media in markdown file.
- twordpress (pypi.python.org)