刚接触爬虫,用爬虫爬了一个不需要登录的网站:起点中文网,爬取了它的收藏榜单,但只筛选出了小说的排行和名字还有作者姓名,原本还打算加上简介,但是简介的源代码存在问题,用同样的方法爬取出的简介的结果是一片空白,放到之后接触更深之后再思考是不是方法存在问题。
下面附上简单的代码:

import requests    #需要的库
import json
from requests.exceptions import RequestException
import re
import time
from bs4 import BeautifulSoup  #美丽汤大法好url = 'https://www.qidian.com/rank/collect?style=1&page=1'
def get_one_page(url):try:          #之前没有加headers被防爬功能禁止了IPheaders = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'}response = requests.get(url, headers=headers)if response.status_code == 200:          #成功状态return response.textreturn Noneexcept RequestException:return Nonedef parse_one_page(html):soup = BeautifulSoup(html, 'lxml')  #第二个参数解析器类型,这里用lxmlnums=soup.find_all(attrs={'class':'book-img-box'})#序号的标签属性texts=soup.find_all(attrs={'data-eid':'qd_C40'})#书名...names=soup.find_all(attrs={'data-eid':'qd_C41'})#作者姓名...for (num,text,name) in zip(nums,texts,names):#学到新知识:多个参数的for循环用zip()print('序号:'+num.text+'\t书名:'+text.text+'\t\t'+'作者:'+name.text)def write_to_file(content):#写入文件with open('result2.txt','a',encoding='utf-8') as f:f.write(json.dumps(content,ensure_ascii=False)+'\n')def main(page):url = 'https://www.qidian.com/rank/collect?style=1&page='+str(page)#页码不同地址不同,观察发现末尾发生变化html = get_one_page(url)parse_one_page(html)if __name__=='__main__':for i in range(1,11):#改变页码的地址main(page=i)time.sleep(1)#防止速度过快被禁止

下面是部分结果,还存在小缺点就是这个因为书名长度不一样,就没办法用\t来控制对齐,用格式化输出控制应该就会解决,emmmm对,原来是我太天真了,试了很多方法比如str.ljust()和format(),序号和书名可以分开对齐了但是作者老是不能单独对齐,之后编写函数对齐吧:

序号: 1   书名:一念永恒         作者:耳根
序号: 2   书名:圣墟           作者:辰东
序号: 3   书名:修真聊天群            作者:圣骑士的传说
序号: 4   书名:玄界之门         作者:忘语
序号: 5   书名:斗罗大陆III龙王传说          作者:唐家三少
序号: 6   书名:斗破苍穹         作者:天蚕土豆
序号: 7   书名:大主宰          作者:天蚕土豆
序号: 8   书名:不朽凡人         作者:鹅是老五
序号: 9   书名:大唐仙医         作者:秃笔居士
序号: 10      书名:雪鹰领主         作者:我吃西红柿
序号: 11      书名:完美世界         作者:辰东
序号: 12      书名:万界天尊         作者:血红
序号: 13      书名:琴帝           作者:唐家三少
序号: 14      书名:放开那个女巫           作者:二目
序号: 15      书名:美食供应商            作者:会做菜的猫
序号: 16      书名:牧神记          作者:宅猪
序号: 17      书名:盘龙           作者:我吃西红柿
序号: 18      书名:斗罗大陆         作者:唐家三少
序号: 19      书名:我欲封天         作者:耳根
序号: 20      书名:凡人修仙传            作者:忘语

也可以这样哈哈哈 看起来好看多了 就是一点也不实用:

    for (num,text,name) in zip(nums,texts,names):print("*********************")print('序号:'+num.text)print('作者:'+name.text)print('书名:'+text.text)print("*********************\n")

花里胡哨的效果:

*********************
序号: 1
作者:耳根
书名:一念永恒
******************************************
序号: 2
作者:辰东
书名:圣墟
******************************************
序号: 3
作者:圣骑士的传说
书名:修真聊天群
******************************************
序号: 4
作者:忘语
书名:玄界之门
******************************************
序号: 5
作者:唐家三少
书名:斗罗大陆III龙王传说
*********************

小爬虫爬起点中文网收藏榜相关推荐

  1. python爬虫获取起点中文网人气排行Top100(快速入门,新手必备!)

    本篇博客小菌为大家带来的是用python爬虫获取起点中文网人气排行Top100的分享,希望大家能在学习的过程中感受爬虫的魅力!         我们先根据网址https://www.qidian.co ...

  2. 小爬虫爬取小猫咪图片并存入本地文件夹

    小爬虫爬取小猫咪图片并存入本地文件夹 本人是安徽工业大学电气与信息工程学院研一学生,最近还不能开学真的是很糟心哦,由于自己比较笨吧,起步较晚还要忙着学习机器学习还有计算机视觉,但是总学这个感觉很闷也没 ...

  3. 爬虫2_起点中文网字体反爬

    今天讲一下起点中文网的列表页爬取,准备爬取的是小说书名.图片url.详情页url.作者.字数.分类及状态. 爬取网址:https://www.qidian.com/all 分析url 翻页至第二页.第 ...

  4. Python爬取起点中文网月票榜前500名网络小说介绍

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  5. 爬虫实战——起点中文网小说的爬取

    首先打开起点中文网,网址为:https://www.qidian.com/ 本次实战目标是爬取一本名叫<大千界域>的小说,本次实战仅供交流学习,支持作者,请上起点中文网订阅观看. 我们首先 ...

  6. python爬取网络小说_Python爬取起点中文网月票榜前500名网络小说介绍

    观察网页结构 进入起点原创风云榜:http://r.qidian.com/yuepiao?chn=-1 老套路,懂我的人都知道我要看看有多少内容和页数需要爬. https://ask.hellobi. ...

  7. 写个小爬虫爬下迅雷会员

    好久不写爬虫...忘了个锤子.于是借着学java的机会用java写个爬虫 爬取静态页面 迅雷会员账号和密码.时时获取最新的~ 先上我暑假写的python版~ : # -*- coding: utf-8 ...

  8. 字体文件反反爬-- 起点中文网

    工作中遇到一个,以前没有遇到的问题是,网站把重要的数字都转换成 其他的东西 爬取网站https://book.qidian.com/info/1011454545 起点女生网 通过审查元素是这样的: ...

  9. python爬虫 爬取bilibili新番榜

    这里用到的模块是request模块和beautifulsoup 首先我们需要打开Bilibili新番榜的审查元素 通过观察可以发现每一个动漫的信息都分别存在了li标签下的rank-item类中 而所有 ...

  10. python小爬虫(爬取职位信息和博客文章信息)

    1.python爬取招聘信息 简单爬取智联招聘职位信息(仅供学习) # !/usr/bin/env python # -*-coding:utf-8-*- """ @Au ...

最新文章

  1. SVO学习笔记(二)
  2. 100年前伦敦爆发的霍乱,教会了人类什么?
  3. Visual Studio® 2010 Web Deployment Projects站点编译生成bin同时发表插件
  4. 科研团队如何探索商业化落地?这家语音AI公司用十年科学试验打了样
  5. YOLO之父退出CV界表达抗议,拒绝AI算法用于军事和隐私窥探
  6. windbg断点学习总结
  7. Win7重启后IP地址无效
  8. 我的世界网易怎么下载java材质包_我的世界中国版材质包怎么用 材质包设置
  9. java absolute_Java Path isAbsolute()用法及代码示例
  10. MongoDB在本地安装与启动
  11. SQL server 2008 r2 安装出错 Could not open key:
  12. javascript 自定义对象的两种方法
  13. 图解3GPP规范文档组织结构与编号规则
  14. 用python进行数据分析(二:数据处理)
  15. 【上海房价预测】代码实现——利用BP神经网络进行上海二手房价预测
  16. 如何使用图片的exif信息计算相机焦距
  17. zepto 的touch 、event
  18. Logo就是商标吗?别再被扰乱视线了
  19. 移远EC200 EC20 EC600 EC800连接MQTT服务器
  20. Dreamweaver8加载站点缓存时卡死,解决办法:

热门文章

  1. Leetcode笔记 每日一题 824. 山羊拉丁文 (22.04.21)
  2. SDUT-3337 计算长方体、四棱锥的表面积和体积(JAVA*)
  3. upload-labs 全21关 write-up
  4. Gradle 2.0 用户指南翻译——第二十三章. Java 插件
  5. BlackBerry Internet Service故障:公司内部同事无法互通邮件,对外联络没有问题
  6. Kaminari分页
  7. ba2plus android,BAPlus金融计算器
  8. 中标麒麟V7-yum源的更换(阿里云源)
  9. CHD的impala实现hive和hbase数据查询
  10. html 按钮变成椭圆,HTML 渐变椭圆按钮