吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1166|回复: 1
收起左侧

[讨论] 第一次用MongoDB存成功 顺便练练css选择器

[复制链接]
lihu5841314 发表于 2021-6-4 13:46
[Asm] 纯文本查看 复制代码
import scrapy
from urllib import parse
from ..items import BiqugeItem


class BjgSpider(scrapy.Spider):
    name = 'bjg'
    allowed_domains = ['xbiquge.la']
    start_urls = ['https://www.xbiquge.la/xiaoshuodaquan/']

    def parse(self, response):
        pages = response.css(".novellist a::attr(href)").extract()  #获取下一页url列表
        # book_names =response.xpath('//div[@class="novellist"]//li/a/text()').extract() #获取所有小说名
        for  page in  pages:
             self.page =page
             yield scrapy.Request(
                 page,callback=self.parse_page
             )

    def parse_page(self,response):
        item = BiqugeItem()
        detail_urls = response.css("#list a::attr(href)").extract()
        item["book_name"] =response.css("#info ::text")[1].extract()         #获取小说名字
        # print(book_name)
        for detall_page in  detail_urls:
            detall_page = parse.urljoin(self.page,detall_page)  #获取章节内容的url
            yield scrapy.Request(
                detall_page,callback=self.parse_detail,meta={"item":item}
             )

    def parse_detail(self,response):
        item =response.meta["item"]
        # charpter =response.xpath('//div[class="bookname"]/h1/text()').extract() #获取章节目录名
        item["book_charpter"] = response.css(".bookname ::text")[1].extract()  # 获取章节目录名
        content =response.css("#content *::text").extract() #获取章节文本列表
        # for i in range(len(content)):
        #     print(i)
        #     content[i] = [x for x in content[i] if x != '']
        #     print(len(content[i]))
        # print(len(content[1]))
        # content= map(str.strip, filter(lambda x: x and x.strip(), content))
        item["book_content"] = [x.strip() for x in content]    #  去除列表中的空格   优解  这样就可以将list内的元素遍历一遍去除空格,重新组成新的list

        yield item
64bea1f47516bfa9ceef1f2b41203e3.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lihu5841314 发表于 2021-6-4 13:47
css 选择  个人感觉没有顺序  提取出章节url   乱跳的  
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 02:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表