inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

현존 최강 크롤링 기술: Scrapy와 Selenium 정복

실전 크롤링: scrapy 크롤링 팁

robots.txt를 회피하려면 어떻게 해야하나요?

458

linux-s

작성한 질문수 14

0

사이트를 Scrapy를 활용해서 할려고 하면 robots 때문에 redirect가 되는데 이를 해결하고자 settings.py에서 

ROBOTSTXT_OBEY = False

로도 바꾸긴 했는데 동일하게 안되는데, 이런경우 scrapy로는 작업을 못하는건가요???

제가 크롤링 하려는 사이트는 www.etherscan.io입니다 
2020-10-22 19:09:55 [scrapy.utils.log] INFO: Scrapy 2.4.0 started (bot: etherscan)

2020-10-22 19:09:55 [scrapy.utils.log] INFO: Versions: lxml 4.5.0.0, libxml2 2.9.9, cssselect 1.1.0, parsel 1.6.0, w3lib 1.22.0, Twisted 20.3.0, Python 3.7.7 (default, Mar 26 2020, 10:32:53) - [Clang 4.0.1 (tags/RELEASE_401/final)], pyOpenSSL 19.1.0 (OpenSSL 1.1.1g  21 Apr 2020), cryptography 2.9.2, Platform Darwin-19.6.0-x86_64-i386-64bit

2020-10-22 19:09:55 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.selectreactor.SelectReactor

2020-10-22 19:09:55 [scrapy.crawler] INFO: Overridden settings:

{'BOT_NAME': 'etherscan',

 'NEWSPIDER_MODULE': 'etherscan.spiders',

 'SPIDER_MODULES': ['etherscan.spiders']}

2020-10-22 19:09:56 [scrapy.extensions.telnet] INFO: Telnet Password: 3e40e2b9fbf79ea2

2020-10-22 19:09:56 [scrapy.middleware] INFO: Enabled extensions:

['scrapy.extensions.corestats.CoreStats',

 'scrapy.extensions.telnet.TelnetConsole',

 'scrapy.extensions.memusage.MemoryUsage',

 'scrapy.extensions.logstats.LogStats']

2020-10-22 19:09:56 [scrapy.middleware] INFO: Enabled downloader middlewares:

['scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware',

 'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware',

 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware',

 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware',

 'scrapy.downloadermiddlewares.retry.RetryMiddleware',

 'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware',

 'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware',

 'scrapy.downloadermiddlewares.redirect.RedirectMiddleware',

 'scrapy.downloadermiddlewares.cookies.CookiesMiddleware',

 'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware',

 'scrapy.downloadermiddlewares.stats.DownloaderStats']

2020-10-22 19:09:56 [scrapy.middleware] INFO: Enabled spider middlewares:

['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',

 'scrapy.spidermiddlewares.offsite.OffsiteMiddleware',

 'scrapy.spidermiddlewares.referer.RefererMiddleware',

 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',

 'scrapy.spidermiddlewares.depth.DepthMiddleware']

2020-10-22 19:09:56 [scrapy.middleware] INFO: Enabled item pipelines:

[]

2020-10-22 19:09:56 [scrapy.core.engine] INFO: Spider opened

2020-10-22 19:09:56 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)

2020-10-22 19:09:56 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6026

2020-10-22 19:09:56 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to <GET https://www.etherscan.io/> from <GET http://www.etherscan.io/>

2020-10-22 19:09:56 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/>

2020-10-22 19:09:57 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:57 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:58 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:58 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:58 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:59 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

2020-10-22 19:09:59 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://www.etherscan.io/404> from <GET https://www.etherscan.io/404>

웹-크롤링 selenium scrapy

답변 1

0

잔재미코딩 DaveLee

안녕하세요. 웹사이트에서 robots 로 크롤링을 금지하도록 설정해놓았다면, 크롤링은 무리가 있는 것으로 이해하고 있습니다. 저의 경우 그런 사이트를 본적은 없긴 한데, 특별한 방법은 없는 것으로 이해하고 있습니다.

추가로, 다음 공지사항도 한번 양해를 부탁드리며, 확인부탁드려요. 감사합니다.

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

안녕하세요. 잔재미코딩 Dave Lee 입니다.

오늘은 한가지 공지를 드려요~~

그동안 정말 다양하고 많은 분들께서 수강을 해주고 계시는데요. 그러다보니, 질문/답변 란에 동일한 이야기를 드릴 때가 많아서 공유를 드려요.

질문/답변 란에, 각자 원하시는 크롤링 코드 관련 문의를 해주시는 경우가 꽤 있었는데요. 그 때마다, 가급적 배려를 드리는 차원으로, 가볍게 볼 수 있는 부분에 대해서만 답변을 드리기는 했습니다. 하지만, 해당 질문/답변 란은 본 강의 영상과 관련한 질문이 있을 때를 답변해드리는 것이 기본 취지인 것 같아요. 

온라인 수학 강의를 수강하면서, 강의에 나온 수학공식을 사용하는 강의 외에 각자 풀고 있는 수학 문제를 질문하고, 이를 풀어드리는 강의는 본 적이 없는데요. 마찬가지로 본 강의를 수강하시면서, 각자의 코드나, 각자 원하시는 크롤링 코드를 작성해드리거나, 함께 풀어나가는 것은 현실적으로 큰 무리가 있습니다.

더군다나 본 강의가 평생 수강이 가능하기 때문에, 이를 지원해드릴 경우, 본 강의를 들으면 내가 원하는 크롤링 코드는 모두 해결해드려야 하는 오해 아닌 오해도 생길 수 있고요. 심지어, 저도 실제 코드를 작성해봐야 해서, 코드를 작성하느라 답변이 늦어지면, 다른 답변이 늦어질 수도 있어서, 다른 수강생분들께도 문제가 될 수 있을 것 같습니다.

그래서, 질문/답변란에 문의를 주실 때에는 각자의 원하시는 크롤링 코드 관련 문의는 안해주시면 감사하겠습니다. 이 부분 꼭 양해를 부탁드립니다.

코딩을 잘 따라 한 것 같은데 오류가 발생하는 것 같습니다

0

626

1

scrapy를 jupyter 환경에서 할 수 있나요

0

360

1

[실전 크롤링: scrapy 크롤링 팁] 질문있습니다.

0

313

1

[실전 크롤링: 지마켓 크롤링하며, scrapy 실전 활용법 익히기1] 5분50초쯤 질문

0

221

1

[강력/최신 크롤링 기술: Scrapy 로 지마켓 크롤링하기1] 관련 질문

0

279

1

xml을 parsing할때 <을 &lt; 로 인식합니다.

0

334

1

pipelines.py에서 process_item내에서 print문이 작동을 하지 않네요 ㅠ

0

292

3

PhantomJS 문의

0

294

1

selenium 문의

0

329

1

브라우저 제어해서 크롤링하기 - 처음강의 마지막부분 문의

0

3004

1

on error 해결 방법 질문

0

356

1

[팁] 윈도우 cmd 커맨드

0

347

1

[팁]Chrome User Agent 아는법

0

327

1

실전 크롤링: 브라우저를 제어해서 트위터 사이트 로그인 하기 질문

0

254

1

동영상 강의 만드실 때 사용한 툴을 알려주실 수 있을까요?

0

237

1

CSS Selector 에서 질문이 있습니다.

0

435

2

pip install scrapy 오류

0

483

1

셀레니움 실행불가

0

1578

1

실전 크롤링: XPATH와 Selenium 활용해서 페이스북 로그인 하기 에서 질문이 있습니다.

0

226

1

언제 get_text()를 사용하고 또 언제 .text를 사용하나요?

0

287

1

강의교안자료 받을수있을까요?

0

263

1

[강의 9:27관련 질문] price, title 열 위치

0

160

1

div에 있는 클래스가 2개이면 어떻게 하나요?

0

368

1

css 셀렉터에 대해 질문이 있습니다.

0

147

1