본문 바로가기
Data/Crawling

[2021.07.07] 인턴 +128 How to set up crawling in Linux (Amazon Linux 2 AMI)?

by injekim97 2021. 7. 7.
반응형

[2021.07.07]  인턴 +128   How to set up crawling in Linux (Amazon Linux 2 AMI)?

 

 

 

<해당 게시글의 Linux 환경 : Amazon Linux 2 AMI 버전임>

-> AWS EC2를 만들때 설정한 환경이다.

해당 게시글은 , EC2  버전 환경 : Amazon Linux 2 AMI (HVM), SSD Volume Type

-> yum 을 통해 pip를 설치 해야함

-> 또한, ssh -i *.pem userid=ec2-user@ipv4주소로 접속가능함.

 

 

 

2021-07-08 17:40

게시물 클릭 에러발생 (페이지 로딩전에 클릭을 했기 때문에 에러가 발생함)

* 해결방법: 1daysago,after1day의  모든  time.sleep()부분을  time.sleep(10) 으로 수정해준다. 

 

 

 

----------------------------------------------------------------------------------------------------------------------

이번 게시글은, 로컬 PC가 아닌,  Linux에서 crawling을 하기 위해 개발 환경 설정하는 법에 대해 알아보자.

 

꼭 알아야 할 점

- AWS에서 EC2 버전이 Ubuntu20.04 랑 Amazon Linux 2 AMI 있음,

=> 둘다 Crawling 개발 환경 설정하는 방법이 다름(ubuntu는 apt-get으로 설치 / Amazon Linux는 yum으로 설치)

해당 게시글은, Amazon Linux 2 AMI에서 setting 하는 방법임.

 

 

 

 

 

 

------------------------------------------------------------------------------------------------------------------------------

로컬 PC의 crawling 코드를 Linux에서 사용했을 때 발생하는 에러이다.

 File "craw_after1day.py", line 202, in <module>
    driver = webdriver.Chrome('/home/ec2-user/linux_chromedirver/chromedriver',options=options)
  File "/home/ec2-user/.local/lib/python3.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
    self.service.start()
  File "/home/ec2-user/.local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 98, in start
    self.assert_process_still_running()
  File "/home/ec2-user/.local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 111, in assert_process_still_running
    % (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service /home/ec2-user/linux_chromedirver/chromedriver unexpectedly exited. Status code was: 127

 

★★★★★ 해당 에러를 해결하기 위하여, 아래와 같이 순서대로 작업을 해줘야 한다. ★★★★★

 

sudo python3 -m pip install selenium

 

sudo vi /etc/yum.repos.d/google-chrome.repo

[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

 



sudo yum install google-chrome-stable


 
3. 구글 크롬 버전 확인하기

google-chrome --version


 

4. 위의 버전에 맞게, google webdriver Linux용 설치

https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 92, please download ChromeDriver 92.0.4515.43 If you are using Chrome version 91, please download ChromeDriver 91.0.4472.101 If you are using Chrome version 90, please download ChromeDriver 90.0.4430.24 If y

chromedriver.chromium.org

 

-> 링크주소 복사 후

sudo wget 컨트롤+v

 


5. chromedriver 압축 풀기

unzip *.zip

 

그런 후에, chromedriver가 있는 경로에서 아래 명령어 수행

sudo mv chromedriver /usr/local/bin
반응형

댓글