python - Flask throwing 500 internal server error -


this routes.py looks like. crawler crawls youtube video links within page. code works fine standalone (not in flask). however, when try make work via flask, throws 500 internal server error. kind of appreciated.

from flask import flask, render_template beautifulsoup import beautifulsoup import requests app = flask(__name__)  @app.route("/") def main():     url="https://www.youtube.com/user/eminemvevo/videos"     source_code=requests.get(url)     text_source_code=source_code.text     final_code=beautifulsoup(text_source_code)     video_url=final_code.findall('a',{'class':'yt-uix-sessionlink yt-uix-tile-link  spf-link  yt-ui-ellipsis yt-ui-ellipsis-2'})      in video_url:         if "/watch?v=" in i.get('href'):             j= i.get('href')             j=j.replace("/watch?v=","")             print "http://youtube.com"+j  if __name__ == '__main__':     app.run() 

stack trace below

traceback (most recent call last):   file "/library/python/2.7/site-packages/flask/app.py", line 1836, in __call__     return self.wsgi_app(environ, start_response)   file "/library/python/2.7/site-packages/flask/app.py", line 1820, in wsgi_app     response = self.make_response(self.handle_exception(e))   file "/library/python/2.7/site-packages/flask/app.py", line 1403, in handle_exception     reraise(exc_type, exc_value, tb)   file "/library/python/2.7/site-packages/flask/app.py", line 1817, in wsgi_app     response = self.full_dispatch_request()   file "/library/python/2.7/site-packages/flask/app.py", line 1478, in full_dispatch_request     response = self.make_response(rv)   file "/library/python/2.7/site-packages/flask/app.py", line 1566, in make_response     raise valueerror('view function did not return response') valueerror: view function did not return response 

your main() method, routed '/', not return values. print youtube urls console, nothing being sent client. flask doesn't that, , not intended.

return list of urls user:

@app.route("/") def main():     ...      data_to_return = []     in video_url:         if "/watch?v=" in i.get('href'):             j= i.get('href')             j=j.replace("/watch?v=","")             data_to_return.append("http://youtube.com"+j)     return '\n'.join(data_to_return) 

Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -