爬取笔趣阁小说,并可以搜索爬取你喜欢的小说

搜索进行爬取你自己喜欢的小说

      我是一个小说爱好者,喜欢看小说,这也是我学习爬虫其中的一个原因。
我喜欢看网络小说,经常需要从网上下载小说。有的还不好找,有的下载不了,如果是正在更新的小说来说,就很难下载到txt或者其他格式的小说。我就是不想花太多时间找冷门小说的下载资源,因此稍微学习了python的爬虫知识。
      废话不多说,直接开始。。。。。。。。。。。。。。。

需要安装的库requests,lxml

这次爬去的是笔趣阁的资源
大概分这几步;
1:输入想爬取的小说
2:获取网页源代码
3:进行对比小说资源
4:获取每章的url
5:获取每章的内容
6:数据清洗后,循环下载保存文件中

1:输入想爬取的小说

这里也可以利用浏览器进行搜索,由于没有拼接使用,所以直接利用拼接url来进行实现。

// An highlighted block

def loginzhihu():                             # url进行拼接

    url = 'https://www.xxbiquge.com/'
    """
        利用浏览器搜索
    """
    # try:
    #     brower = webdriver.Firefox()  # 初始化一个火狐浏览器实例:driver
    #     # dr=webdriver.Chrome()     调用谷歌浏览器
    #     brower.implicitly_wait(8)  # 设置隐式等待时间
    #     brower.maximize_window()  # 最大化浏览器
    #     brower.get(url)  # 通过get()方法,打开一个url站点
    #
    #     brower.find_element_by_xpath('//*[@id="keyword"]').send_keys(str(p))  # 搜索框输入胡歌
    #     brower.find_element_by_xpath('//*[@id="wrapper"]/div[2]/div[2]/span/input').click()  # 点击百度一下按钮
    #
    #     time.sleep(2)  # 等待2秒
    #     sousuoye = brower.current_url
    #     print("搜索页网址:" +  sousuoye)
    #     brower.quit() #退出浏览器
    #     sousuo(sousuoye)
    #
    #
    # except ElementNotVisibleException as e: #进行错误提示
    #     print(e)
    """
    
        利用url进行拼接
    """
    p = input("请输入下载的小说:")
    Baseurl  =  url + "search.php?keyword=" + str(p)
    sousuo(Baseurl,p)

2:获取网页源代码

进行封装到一块,对每个网站进行获取网页源代码

def request_url(url):                           # 对每个网站的网页进行解析显示原网页
    s = requests.Session()
    html = s.get(url)
    html.encoding = 'utf-8'

    return html.text

3:进行对比小说资源

进入结果页后,由于搜索后有许多小说,所以要进行比对,,看哪一个是自己寻找的小说,如果比对成功,则直接下一步,进行下载,不然就结束本次程序。

def sousuo(url,p):                          # 按照小说的名字进行搜索小说
    html  = request_url(url)
    htm = etree.HTML(html)
    url_sousuoye = htm.xpath("//div[3]/div[1]/div[2]/h3/a/@href")[0]
    print("搜索的小说网址:" + url_sousuoye)
    # fiction_name = htm.xpath("/html/body/div[3]/div/div[2]/h3/a/span/text()")[0]   # 获取小说名进行对比

    fiction_list = htm.
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值