Exemplo n.º 1
0
    def do_GET(self):
        # get the query string variables
        self.urlparser = urlparse.urlparse(self.path)
        self.query_string = self.urlparser.query
        self.query_dict = urlparse.parse_qs(self.query_string)

        # get the url and output_file
        self.url = self.query_dict.get('url', [
            None,
        ])[0]
        self.output_file = self.query_dict.get('output_file', [
            None,
        ])[0]

        # return error if url or output_file are missing
        if not self.url or not self.output_file:
            self.handle_404("url and output_file params are required")
            return None

        # convert all query objects from list to single items
        options_dict = {}
        for k, v in self.query_dict.items():
            options_dict[k] = v[0]

        wkhtp = WKhtmlToPdf(self.url, self.output_file, **options_dict)
        output_file = wkhtp.render()

        # send json response
        if output_file[0]:
            self.handle_200("the file has been saved", output_file[1])
        else:
            self.handle_500("%s - the file could not be created" %
                            output_file[1])
Exemplo n.º 2
0
 def setUp(self):
     self.url = "http://www.example.com"
     self.output_file = "/tmp/example.pdf"
     self.wkhtmltopdf = WKhtmlToPdf(self.url, self.output_file)