summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar ryuslash2010-02-09 01:32:42 +0100
committerGravatar ryuslash2010-02-09 01:32:42 +0100
commit32c4471273097523d64ad0f7704861f211e78f72 (patch)
treef2fc37c1f38373d3c35e3267b2489eac23fe7edf
parent53c7802ae2ef25ebed4e130813ce95e2816c919b (diff)
download4grab-32c4471273097523d64ad0f7704861f211e78f72.tar.gz
4grab-32c4471273097523d64ad0f7704861f211e78f72.zip
working on the command-line arguments here
-rw-r--r--.gitignore2
-rw-r--r--4grab.py17
-rw-r--r--config.py26
3 files changed, 37 insertions, 8 deletions
diff --git a/.gitignore b/.gitignore
index 2f836aa..fa1554f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,4 @@
*~
*.pyc
+#*#
+.* \ No newline at end of file
diff --git a/4grab.py b/4grab.py
new file mode 100644
index 0000000..4de6526
--- /dev/null
+++ b/4grab.py
@@ -0,0 +1,17 @@
+import optparse
+import sys
+
+import config
+
+parser = optparse.OptionParser()
+
+parser.add_option("-e", nargs=2, dest="confval", metavar="VALUE")
+
+(options, args) = parser.parse_args()
+
+if options.confval:
+ if not config.Configuration().option_exists(options.confval[0]):
+ print "%s: error: %s is not a valid configuration option" % (sys.argv[0], options.confval[0])
+ exit(1)
+ print "Setting", options.confval[0], "to", options.confval[1]
+ config.Configuration().
diff --git a/config.py b/config.py
index 7110ce5..519a0b3 100644
--- a/config.py
+++ b/config.py
@@ -12,18 +12,12 @@ class _Configuration(object):
def create_new(self):
self.configparser.add_section("settings")
- self.configparser.set("settings", "category", self.raw_input_with_default("w", "Please enter which category you would like to download from: "))
+ self.set_category(self.raw_input_with_default("w", "Please enter which category you would like to download from: "))
self.configparser.add_section("locations")
self.configparser.set("locations", "download", self.raw_input_with_default(os.path.join(os.getenv("HOME"), "Pictures"), "Please enter where you would like the downloads to go: "))
- #with open(self.filename) as configfile:
- # self.configparser.write(configfile)
- dirname = os.path.dirname(self.filename)
- if not os.path.exists(dirname):
- os.mkdir(dirname)
- configfile = open(self.filename, "w")
- self.configparser.write(configfile)
+ self.save()
def raw_input_with_default(self, default, prompt):
inp = raw_input("%s (default=%s): " % (prompt, default))
@@ -37,5 +31,21 @@ class _Configuration(object):
def get_category(self):
return self.configparser.get("settings", "category")
+ def set_category(self, value):
+ self.configparser.set("settings", "category", value)
+
+ def option_exists(self, option):
+ for section in self.configparser.sections():
+ if self.configparser.has_option(section, option):
+ return True
+ return False
+
+ def save(self):
+ dirname = os.path.dirname(self.filename)
+ if not os.path.exists(dirname):
+ os.mkdir(dirname)
+ configfile = open(self.filename, "w")
+ self.configparser.write(configfile)
+
_configuration = _Configuration()
def Configuration(): return _configuration