AttributeError: 'NoneType' object has no attribute error - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: Web Scraping & Web Development (https://python-forum.io/forum-13.html) +--- Thread: AttributeError: 'NoneType' object has no attribute error (/thread-7995.html) |
AttributeError: 'NoneType' object has no attribute error - vk7 - Feb-02-2018 I am writing a python script for scrapping weather of different city from weather-forecast website. I got an AttributeError in my code and i am unable to gets the cause of error. Here is my code: import urllib.request, urllib.parse, urllib.error import ssl import re # Ignore SSL certificate errors ctx = ssl.create_default_context() ctx.check_hostname = False ctx.verify_mode = ssl.CERT_NONE condition = 1 braces = '<' while(condition): end = 0 start = 0 city = input('enter city: ') url = "http://www.weather-forecast.com/locations/" + city + "/forecasts/latest" rawData = urllib.request.urlopen(url, context=ctx).read() data = rawData.decode() string = re.search('1 – 3 Day Weather Forecast Summary:</b><span class="read-more-small"><span class="read-more-content"><span class="phrase">', data) start = string.end() i = 0 for i in range(start,start+500): if data[i] == braces: end = i break weather = data[start:end] final = weather.replace("°C"," °C") print(final) print("")This is an error occured:
RE: AttributeError: 'NoneType' object has no attribute error - buran - Feb-02-2018 the reason for this particular error is that your regex does not match anything and returns None. Note that using Regex to parse HTML is not working, you need package like BeautifulSoup. However this site is using javascript to produce the page you see (and that is one more reason why your regex does not match anything), so at the end you will need to use tools like selenium if you want to scrape it. |