I'm learning Scrapy. I did the tutorial at https://realpython.com/blog/python/web-scraping-with-scrapy-and-mongodb/ and everything went fine. Then I started a new simple project to extract data while I watch the YouTube video and did the same thing and this is the output
--this is the code ---
import scrapy
class PostsSpider(scrapy.Spider):
name = "posts"
star_url = [
"https://www.zyte.com/blog/"
]
def parse(self, response):
for post in response.css("div.oxy-post"):
yield {
"title": post.css(".oxy-post-title::text").get(),
"author": post.css(".oxy-post-meta-author::text").get(),
"date": post.css(".oxy-post-image-date-overlay::text").get()
}
next_page = response.css("a.next_page-numbers::attr(href)").get()
if next_page is not None:
next_page = response.urljoin(next_page)
yield scrapy.Request(next_page, callback=self.parse)
---this is the log---
(venv) C:\Users\taka\PycharmProjects\pythonProject\SCRAPY\postscrape>scrapy crawl posts -o posts.json
2021-06-16 07:17:20 [scrapy.utils.log] INFO: Scrapy 2.5.0 started (bot: postscrape)
2021-06-16 07:17:20 [scrapy.utils.log] INFO: Versions: lxml 4.6.3.0, libxml2 2.9.5, cssselect 1.1.0, parsel 1.6.0, w3lib 1.22.0, Twisted 21.2.0, Python 3
.9.5 (tags/v3.9.5:0a7dcbd, May 3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)], pyOpenSSL 20.0.1 (OpenSSL 1.1.1k 25 Mar 2021), cryptography 3.4.7, Platfo
rm Windows-10-10.0.19043-SP0
2021-06-16 07:17:20 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.selectreactor.SelectReactor
2021-06-16 07:17:20 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'postscrape',
'NEWSPIDER_MODULE': 'postscrape.spiders',
'ROBOTSTXT_OBEY': True,
'SPIDER_MODULES': ['postscrape.spiders']}
2021-06-16 07:17:20 [scrapy.extensions.telnet] INFO: Telnet Password: 3d3de3400c214e60
2021-06-16 07:17:20 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.feedexport.FeedExporter',
'scrapy.extensions.logstats.LogStats']
2021-06-16 07:17:21 [scrapy.middleware] INFO: Enabled downloader middlewares:
['scrapy.downloadermiddlewares.robotstxt.RobotsTxtMiddleware',
'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']
2021-06-16 07:17:21 [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']
2021-06-16 07:17:21 [scrapy.middleware] INFO: Enabled item pipelines:
[]
2021-06-16 07:17:21 [scrapy.core.engine] INFO: Spider opened
2021-06-16 07:17:21 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2021-06-16 07:17:21 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2021-06-16 07:17:21 [scrapy.core.engine] INFO: Closing spider (finished)
2021-06-16 07:17:21 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'elapsed_time_seconds': 0.002995,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2021, 6, 15, 22, 17, 21, 195804),
'log_count/INFO': 10,
'start_time': datetime.datetime(2021, 6, 15, 22, 17, 21, 192809)}
2021-06-16 07:17:21 [scrapy.core.engine] INFO: Spider closed (finished)
I tried xpath instead of css but the outcome was the exact same.
Thanks! Any help is appreciated!