我如何使用 scrapy 中的选择器解析这个特定的 html 正文?

How do i parse this specific html body using selector in scrapy?

我正在尝试从特定网站抓取特定项目。

代码片段如下:

    # Constant Div Path variables for Parameters.
    pathForMovieCardContainer = '//div[@class="card-container wow fadeIn movie-card-container"]'
    pathForMovieName = 'div[@class="card-container wow fadeIn movie-card-container"]//div[@class="cards"]//div[@class="card-details"]//div[@class="card-right"]//div[@class="card-title"]/text()'
    str_slash = "/"
    movies_dict = []
    movies = response.xpath(pathForMovieCardContainer).extract()

    for movie in movies:
        print("***********************")
        print(movie)
        mov = TestDataCrawlersItem()
        mov['name'] = Selector(text=movie).xpath(pathForMovieName).extract()

我无法从路径 'div[@class="card-container wow fadeIn movie-card-container"]//div[@class="cards"]//div[@class="card-details"]//div[@class="card-right"]//div[@class="card-title"]/text()' 获取文本我不确定我的 pathForMovieName 是否构建正确。有人可以帮我弄这个吗?谢谢!

当您需要通过 class 名称 select 元素时,使用 .css().xpath() 更简单。你可以尝试这样的事情:

movies = response.css('.movie-card-container')
for movie in movies:
    item = TestDataCrawlersItem()
    item['name'] = movie.css('.card-title::text').get()

有关 CSS select 或:https://parsel.readthedocs.io/en/latest/usage.html

的更多信息