Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Traceback error
#1
When I run the following
import requests
from bs4 import BeautifulSoup
from pathlib import Path

class GetCompletions:
    def __init__(self, infile):
        """Above will create a folder called comppdf, and geocorepdf wherever the WOGCC
           File Downloads file is run from as well as a text file for my api file to
           reside.
        """
        self.homepath = Path('.')
        self.completionspath = self.homepath / 'comppdf'
        self.completionspath.mkdir(exist_ok=True)
        self.geocorepdf = self.homepath / 'geocorepdf'
        self.geocorepdf.mkdir(exist_ok=True)
        self.textpath = self.homepath / 'text'
        self.text.mkdir(exist_ok=True)

        self.infile = self.textpath / infile
        self.api = []

        self.parse_and_save(getpdfs=True)



    def get_url(self):
        for entry in self.apis:
            yield (entry, "http://wogcc.state.wy.us/wyocomp.cfm?nAPI=[]".format(entry[3:10]))
            yield (entry, "http://wogcc.state.wy.us/whatupcores.cfm?autonum=[]".format(entry[3:10]))

        """Above will get the URL that matches my API numbers."""

    def parse_and_save(self, getpdfs=False):
        for file in filelist:
            with file.open('r') as f:
                soup = BeautifulSoup(f.read(), 'lxml')
            if getpdfs:
                links = soup.find_all('a')
                for link in links:
                    url in link['href']
                    if 'www' in url:
                        continue
                    print('downloading pdf at: {}'.format(url))
                    p = url.index('=')
                    response = requests.get(url, stream=True, allow_redirects=False)
                    if response.status_code == 200:
                        try:
                            header_info = response.headers['Content-Disposition']
                            idx = header_info.index('filename')
                            filename = self.log_pdfpath / header[idx+9:]
                        except ValueError:
                            filename = self.log_pdfpath / 'comp{}'.format(url[p+1:])
                            print("couldn't locate filename for {} will use: {}".format(file, filename))
                        except KeyError:
                            filename = self.log_pdfpath / 'comp{}.pdf'.format(url[p+1:])
                            print('got KeyError on {}, respnse.headers = {}'.format(file, response.headers))
                            print('will use name: {}'.format(filename))
                            print(repsonse.headers)
                        with filename.open('wb') as f:
                            f.write(respnse.content)

            sfname = self.textpath / 'summary_{}.txt'.format((file.name.split('_'))[1].split('.')[0][3:10])
            tds = soup.find_all('td')
            with sfname.open('w') as f:
                for td in tds:
                    if td.text:
                        if any(field in td.text for field in self.fields):
                            f.write('{}\n'.format(td.text))

if __name__ == '__main__':
    GetCompletions('api.txt')
It doesn't create this text file.

 self.textpath = self.homepath / 'text'
        self.text.mkdir(exist_ok=True)
I get the following error

Error:
RESTART: C:\Users\toliver\AppData\Local\Programs\Python\Python36\WOGCC\WOGCC_File_Downloads.py Traceback (most recent call last): File "C:\Users\toliver\AppData\Local\Programs\Python\Python36\WOGCC\WOGCC_File_Downloads.py", line 71, in <module> GetCompletions('api.txt') File "C:\Users\toliver\AppData\Local\Programs\Python\Python36\WOGCC\WOGCC_File_Downloads.py", line 17, in __init__ self.text.mkdir(exist_ok=True) AttributeError: 'GetCompletions' object has no attribute 'text'
I appreciate any help I can get!

Thanks!

Tonya
Reply


Messages In This Thread
Traceback error - by tjnichols - May-23-2018, 02:28 PM
RE: Traceback error - by tjnichols - May-23-2018, 03:40 PM
RE: Traceback error - by Larz60+ - May-23-2018, 05:13 PM
RE: Traceback error - by tjnichols - May-23-2018, 05:42 PM
RE: Traceback error - by Larz60+ - May-23-2018, 05:59 PM
RE: Traceback error - by tjnichols - May-23-2018, 06:01 PM
RE: Traceback error - by nilamo - May-23-2018, 06:03 PM
RE: Traceback error - by nilamo - May-23-2018, 06:05 PM
RE: Traceback error - by tjnichols - May-23-2018, 06:08 PM
RE: Traceback error - by tjnichols - May-23-2018, 08:21 PM
RE: Traceback error - by buran - May-23-2018, 08:26 PM
RE: Traceback error - by tjnichols - May-23-2018, 09:26 PM
RE: Traceback error - by Larz60+ - May-23-2018, 09:38 PM
RE: Traceback error - by tjnichols - May-24-2018, 12:33 PM
RE: Traceback error - by Larz60+ - May-24-2018, 02:37 PM
RE: Traceback error - by tjnichols - May-24-2018, 03:01 PM
RE: Traceback error - by Larz60+ - May-24-2018, 03:06 PM
RE: Traceback error - by Truman - Jun-24-2018, 10:10 PM
RE: Traceback error - by tjnichols - May-24-2018, 03:35 PM
RE: Traceback error - by Larz60+ - May-24-2018, 03:42 PM
RE: Traceback error - by tjnichols - May-24-2018, 03:52 PM
RE: Traceback error - by Larz60+ - May-25-2018, 12:03 PM
RE: Traceback error - by tjnichols - May-25-2018, 03:30 PM
RE: Traceback error - by Larz60+ - May-25-2018, 05:58 PM
RE: Traceback error - by tjnichols - May-25-2018, 06:15 PM
RE: Traceback error - by Larz60+ - May-25-2018, 06:16 PM
RE: Traceback error - by tjnichols - May-25-2018, 10:13 PM
RE: Traceback error - by Larz60+ - May-26-2018, 12:15 AM
RE: Traceback error - by tjnichols - May-26-2018, 12:38 AM
RE: Traceback error - by Larz60+ - May-26-2018, 03:29 AM
RE: Traceback error - by tjnichols - May-26-2018, 05:11 PM
RE: Traceback error - by Larz60+ - May-26-2018, 07:57 PM
RE: Traceback error - by Larz60+ - May-27-2018, 12:47 AM
RE: Traceback error - by tjnichols - May-27-2018, 02:12 PM
RE: Traceback error - by Larz60+ - May-27-2018, 02:21 PM
RE: Traceback error - by tjnichols - May-27-2018, 02:31 PM
RE: Traceback error - by Larz60+ - May-27-2018, 04:50 PM
RE: Traceback error - by tjnichols - May-27-2018, 05:04 PM
RE: Traceback error - by Larz60+ - May-27-2018, 07:45 PM
RE: Traceback error - by tjnichols - May-27-2018, 08:22 PM
RE: Traceback error - by Larz60+ - May-27-2018, 09:50 PM
RE: Traceback error - by tjnichols - May-27-2018, 11:39 PM
RE: Traceback error - by Larz60+ - May-28-2018, 12:01 AM
RE: Traceback error - by Larz60+ - May-28-2018, 02:39 AM
RE: Traceback error - by tjnichols - May-28-2018, 05:30 AM
RE: Traceback error - by Larz60+ - May-28-2018, 02:38 PM
RE: Traceback error - by tjnichols - May-28-2018, 04:07 PM
RE: Traceback error - by tjnichols - May-28-2018, 06:47 PM
RE: Traceback error - by Larz60+ - May-28-2018, 09:00 PM
RE: Traceback error - by tjnichols - May-28-2018, 09:57 PM
RE: Traceback error - by Larz60+ - May-28-2018, 10:10 PM
RE: Traceback error - by tjnichols - May-28-2018, 10:25 PM
RE: Traceback error - by tjnichols - Jun-01-2018, 03:15 PM
RE: Traceback error - by Larz60+ - Jun-24-2018, 11:31 PM
RE: Traceback error - by Truman - Jun-25-2018, 10:31 PM
RE: Traceback error - by Larz60+ - Jun-25-2018, 11:52 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Traceback error tjnichols 3 5,374 Sep-11-2018, 07:04 PM
Last Post: tjnichols
  Traceback error tjnichols 3 3,582 Sep-05-2018, 06:11 PM
Last Post: tjnichols
  Traceback error - I don't get it tjnichols 2 3,121 May-24-2018, 08:10 PM
Last Post: Larz60+

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020