Skip to content

Instantly share code, notes, and snippets.

@ShaneRich5
Created May 19, 2017 17:58
Show Gist options
  • Save ShaneRich5/3c5fd13cfbd48a4bfe6c280a99bd5934 to your computer and use it in GitHub Desktop.
Save ShaneRich5/3c5fd13cfbd48a4bfe6c280a99bd5934 to your computer and use it in GitHub Desktop.
#!/bin/python
import csv
import xml.etree.ElementTree as ET
from util import prettify, capitalize
class AutoBuilder:
def __init__(self):
self.create_rss_element()
self.create_channel_element()
def create_rss_element():
self.rss_element = ET.Element('rss')
self.rss_element.set('version', '2.0')
self.rss_element.set('xmlns:excerpt', 'http://wordpress.org/export/1.2/excerpt/')
self.rss_element.set('xmlns:content', 'http://purl.org/rss/1.0/modules/content/')
self.rss_element.set('xmlns:wfw', 'http://wellformedweb.org/CommentAPI/')
self.rss_element.set('xmlns:dc', 'http://purl.org/dc/elements/1.1/')
self.rss_element.set('xmlns:wp', 'http://wordpress.org/export/1.2/')
def create_channel_element():
channel_element = ET.SubElement(self.rss_element, 'channel')
ET.SubElement(channel_element, 'title').text = 'ATL Automotive'
ET.SubElement(channel_element, 'link').text = 'http://54.160.56.225'
ET.SubElement(channel_element, 'description').text = 'Jamaica's Leading Automotive Company - Unbeatable!'
ET.SubElement(channel_element, 'pubDate').text = 'Thu, 18 May 2017 19:57:30 +0000'
ET.SubElement(channel_element, 'language').text = 'en-US'
ET.SubElement(channel_element, 'wp:wxr_version').text = '1.2'
ET.SubElement(channel_element, 'wp:base_site_url').text = 'http://54.160.56.225'
ET.SubElement(channel_element, 'wp:base_blog_url').text = 'http://54.160.56.225'
wp_author_element = ET.SubElement(channel_element, 'wp:author')
ET.SubElement(wp_author_element, 'wp:author_id').text = '3'
ET.SubElement(wp_author_element, 'wp:author_login').text = '<![CDATA[Shane]]>'
ET.SubElement(wp_author_element, 'wp:author_email').text = '<![CDATA[[email protected]]]>'
ET.SubElement(wp_author_element, 'wp:author_display_name').text = '<![CDATA[Shane Richards]]>'
ET.SubElement(wp_author_element, 'wp:author_first_name').text = '<![CDATA[Shane]]>'
ET.SubElement(wp_author_element, 'wp:author_last_name').text = '<![CDATA[Richards]]>'
ET.SubElement(channel_element, 'generator').text = 'https://wordpress.org/?v=4.7.2'
channel_image_element = ET.SubElement(channel_element, 'image')
ET.SubElement(channel_image_element, 'url').text = 'http://54.160.56.225/wp-content/uploads/2017/02/cropped-atl-favicon-32x32.png'
ET.SubElement(channel_image_element, 'title').text = 'ATL Automotive'
ET.SubElement(channel_image_element, 'link').text = 'http://54.160.56.225'
ET.SubElement(channel_image_element, 'width').text = '32'
ET.SubElement(channel_image_element, 'height').text = '32'
self.channel_element = channel_element
def add_item(item):
class ItemBuilder:
self.item = ET.Element('item')
def __init__(self):
def add_element(name, text=''):
ET.SubElement(self.item, name).text = text
def add_meta(meta_element):
class MetaBuilder:
def __init__(self, key, value):
meta = ET.Element('wp:postmeta')
ET.SubElement(meta, 'wp:meta_key').text = '<![CDATA[' + key + ']]>'
ET.SubElement(meta, 'wp:meta_value').text = '<![CDATA[' + value + ']]>'
self.meta = meta
def get_element():
return self.meta
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment