본문 바로가기

코딩 프로그래밍/PYTHON 파이썬27

Python Selenium 창 사이즈 설정하기 크롤링 하면서 창 사이즈를 조절해야 하는 경우가 있어요 headless를 설정해서 화면이 보이지 않도록 할 수 있는데요 headless 옵션으로 모니터 화면보다 셀레니움에서 크게 화면을 설정해볼 수 있어요 from selenium import webdriver chrome_options = Options() chrome_options.binary_location = os.environ.get("GOOGLE_CHROME_BIN") chrome_options.add_argument("--headless") driver = webdriver.Chrome(executable_path=os.environ.get("CHROMEDRIVER_PATH"),options=chrome_options) driver.set_w.. 2020. 10. 23.
Python 크롤링 selenium 자바스크립트 결과 값 받기 자바스크리트를 실행하고 결과를 Python으로 가져와서 활용하는 방법입니다 >>> from selenium import webdriver >>> driver = webdriver.Chrome(executable_path=os.environ.get("CHROMEDRIVER_PATH")) >>> driver.get("http://접속주소") >>> driver.execute_script("return 5") 5 >>> driver.execute_script("return true") True >>> driver.execute_script("return {j: '값'}") {u'foo': u'bar'} >>> driver.execute_script("return func()") u'func 함수 실행 결과' .. 2020. 10. 22.
Python Flask 를 repl.it 에 올려보기 - repl.it 에서 pip 사용하기 파이썬 Python 플라스크 Flask 를 무료로 서비스해보기 위해서 repl.it 에 올려봤어요 아직 아이디 없다면 repl.it 에 접속해서 가입해보세요 가입하고 나면 왼쪽 상단에 생성할 수 있는 버튼이 있어요 New repl 을 눌러서 생성을 진행합니다 생성하는 창에서 왼쪽에 Python 을 선택하고 오른쪽에 이름을 정하고 쓰세요 이름은 나중에 접속하는 주소로 활용됩니다 flask 가 필요하니까 패키지 아이콘을 누르세요 Flask 를 검색하세요 더하기 + 버튼을 눌러서 설치를 진행하세요 오른쪽 검은 화면에 pip 명령어를 이용해서 flask 를 설치하던 것과 비슷하게 실행되는 모습이 보여요 이제 Flask 설치가 끝났어요 패키지 아이콘을 다시 눌러서 목록을 확인해보면 Flask 가 설치된 목록에 보.. 2020. 10. 19.
Python Flask 이미지 파일 다운로드 파이썬 Python 플라스크 Flask 를 이용해서 파일을 다운로드하도록 했는데요 이미지는 다운이 되는 것이 아니라 웹에서 바로 보이는 현상이 있어요 as_attachment 옵션을 이용하면 무조건 다운 받아 지도록 할 수 있어요 return send_file( BytesIO(image_binary), mimetype='image/png', as_attachment=True, attachment_filename=filename) 2020. 10. 18.
Heroku 서비스에서 Selenium Python 크롤링하기 파이썬에서 Selenium 이용하여 크롤링하려면 크롬이 필요해요 노트북에서는 그냥 다운로드하여서 설치하면 되는데 헤로쿠에서 사용하려면 빌드팩을 설정하면 가능합니다 명령어로 할 수도 있는데 웹에서 작업하는게 편하더라고요 Heroku 에서 로그인해서 원하는 프로그램을 선택하고 Settings으로 가면 Buildpacks 부분에서 설정할 수 있어요 파이썬 어플을 만들고 있었다면 heroku/python 이 기본적으로 있을 텐데요 크롬을 설치하기 위해서 Add buildpack을 눌러서 2개를 추가해주세요 # 구글 크롬 https://github.com/heroku/heroku-buildpack-google-chrome ## 크롬 드라이버 https://github.com/heroku/heroku-buildpa.. 2020. 10. 17.
Python Flask Gunicorn Timeout 시간 초과 늘이기 파이썬 플라스크 Python Flask 로 간단한 서비스를 만들었어요 테스트 해보기 위해서 Heroku 헤로쿠에 올렸는데요 특성상 시간이 좀 걸리는 api 가 있는데 시간 초과 time out 나면서 아예 500 오류가 나더라고요 그래서 이 설정을 늘리는 방법입니다 헤로쿠에 올리려면 gunicorn 사용했을 텐데요 옵션을 추가하면 됩니다 Procfile 파일을 열고 수정해주세요 web: gunicorn app:app --timeout 30 일단 30초로 늘렸어요 기본 값이 10초 일 겁니다 2020. 10. 15.
Python Flask 캐시 기능 끄기 한 번 다운로드하였던 파일이 다시 호출하면 빠르게 되어서 좋기는 한데 갱신이 안되더라고요 항상 최신 이미지를 생성해야 하는 서비스라서 캐시를 끄기로 했어요 헤더 정보에 캐시를 사용하지 않는 정보를 넣는 방법입니다 @app.after_request def set_response_headers(response): response.headers['Cache-Control'] = 'no-cache, no-store, must-revalidate' response.headers['Pragma'] = 'no-cache' response.headers['Expires'] = '0' return response 동적으로 이미지를 만드는 서비스인데 이렇게 하니까 항상 새로운 이미지를 만드네요~ 2020. 10. 12.
Python Flask http 를 https 로 연결하는 방법 http로 접속하면 https로 자동으로 연결되도록 처리하는 코드입니다 다른 처리 단에서 해도 되는데 파이썬 플라스크에서 처리하려고 할 때 하는 방법입니다 @app.before_request def before_request(): if request.url.startswith('http://'): url = request.url.replace('http://', 'https://', 1) code = 301 return redirect(url, code=code) 이렇게 하면 http 주소로 접속하면 자연스럽게 https로 연결합니다 2020. 10. 11.
반응형