在发布了python爬取知乎盐选文章内容后,没想到居然这么快就要更新新的内容了。

在下午思考第一篇python爬取知乎盐选文章内容的时候,其实就把自动爬取目录内的其他内容的方法想出来了,但是本来没想这么快更新的,哈哈。

不过思来想去还是发出来吧,毕竟要不哪天就忘了。

from DecryptLogin import login
from bs4 import BeautifulSoup
import re
import base64
lg = login.Login()
_, loginstauts = lg.zhihu(username='', password='', mode='pc')
headers = {'user-agent': "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"
}
url1 = "https://www.zhihu.com/market/paid_column/1178733193687175168/section/1178742737682350080"
url2 = "https://www.zhihu.com/market/paid_column/1178733193687175168/section/1178742849583083520"
# 获取链接
r = loginstauts.get(url1, headers=headers)
wenzi = r.text
soup = BeautifulSoup(wenzi, 'lxml')
lianjie = soup.textarea
lianjie = str(lianjie)
pattern = re.compile('"next_section":{"url":"(.+)","is_end":') #正则匹配链接所在的文字
result = pattern.findall(lianjie)
texts = soup.find_all('p')
for text in texts:with open("yanxuan.txt", 'a', encoding='utf-8') as file_object:file_object.write(text.get_text()+" ")
list = result.pop(0)
print(list)
for link in range(0, 9):r2 = loginstauts.get(list, headers=headers)wenzi = r2.textsoup = BeautifulSoup(wenzi, 'lxml')lianjie = soup.textarealianjie = str(lianjie)pattern = re.compile('"next_section":{"url":"(.+)","is_end":')  # 正则匹配链接所在的文字result = pattern.findall(lianjie)list = result.pop(0)texts = soup.find_all('p')for text in texts:with open("yanxuan.txt", 'a', encoding='utf-8') as file_object:file_object.write(text.get_text()+" ")# print(text.get_text())# print(list)
# r2 = loginstauts.get(list, headers=headers)
# wenzi2 = r2.text
# soup2 = BeautifulSoup(wenzi2, 'lxml')

直接上一手代码,讲一下思路,首先先是获取文本内容,我们知道 了如何获取文本内容,并且明白了该怎么获取整个页面的html内容。

本来最初的想法是把目录里的每一个链接都复制下来,然后通过遍历来获取链接,因为我最初是真的没发现下一篇的链接是通过哪里获得的。然后今天下午的时候,认认真真(闲的蛋疼)的看了一下知乎盐选文章内容的源代码,发现原来跳转链接在他的底部textarea里,并且还是在里面的一个next_section里,让我一顿好找,不过找到就是最好的啦。
找到之后,我们只需要获取到跳转的链接即可了,只需要使用正则进行条件筛选就可以了。

pattern = re.compile('"next_section":{"url":"(.+)","is_end":')  # 正则匹配链接所在的文字
result = pattern.findall(lianjie)

也就是这一段代码,我们对获取的内容进行匹配筛选,即可获得链接了,不过在获得之后,还是会出现一个问题,就是获取的内容会储存在列表里,我们还需要把列表的内容读取出来才能使用。本来其实最早我的思路是使用循环,然后把获取到的链接储存到同一个列表里,然后利用循环读取即可,但是因为当时脑子可能抽了,把变量的值给改错了,前面虽然该出来了,但是后面的都没改,就会得到一个很尴尬的结果,就是所有的结果都是同一个,然后我就换了种方法,没想到刚换就找到了问题所在。不过也懒得该回去了。通过列表的方法pop来对列表内容进行删除,并且将删除返回的值进行保存,然后当作一个数据进行储存。
也就是这一段的内容了

for link in range(0, 9):r2 = loginstauts.get(list, headers=headers)wenzi = r2.textsoup = BeautifulSoup(wenzi, 'lxml')lianjie = soup.textarealianjie = str(lianjie)pattern = re.compile('"next_section":{"url":"(.+)","is_end":')  # 正则匹配链接所在的文字result = pattern.findall(lianjie)list = result.pop(0)texts = soup.find_all('p')for text in texts:with open("yanxuan.txt", 'a', encoding='utf-8') as file_object:file_object.write(text.get_text()+" ")# print(text.get_text())

其他的也就没有什么难度的东西了,不过如果有什么疑问,可以在评论区留下你的疑惑,我会在看到的第一时间进行回复的。

本文章参考自:

http://www.tuomeier.com.cn/sitemap.php
http://www.joyrv.com/sitemap.php
http://www.ynjpy.com/sitemap.php
http://www.360pmp.cn/sitemap.php
http://www.zzdfg.cn/sitemap.php
http://www.eso360.cn/sitemap.php
http://www.shanghuajiu.cn/sitemap.php
http://www.zdaoju.cn/sitemap.php
http://www.taosx.cn/sitemap.php
http://www.shiwei-cy.com/sitemap.php
http://www.tiwimuta.com/sitemap.php
http://www.zjxL.net/sitemap.php
http://www.micgo.com/sitemap.php
http://www.tcminigames.com/sitemap.php
http://www.365gbo.com/sitemap.php
http://www.xnum.cn/sitemap.php
http://www.jzcjbrake.cn/sitemap.php
http://www.shiplamp.cn/sitemap.php
http://www.sh-runlu.cn/sitemap.php
http://www.sxlonggu.cn/sitemap.php
http://www.hulianwl.cn/sitemap.php
http://www.hook123.cn/sitemap.php
http://www.us-visa.cn/sitemap.php
http://www.qzfuhua.cn/sitemap.php
http://www.twodogs.cn/sitemap.php
http://www.qwe520.cn/sitemap.php
http://www.sk1972.cn/sitemap.php
http://www.kuosai.cn/sitemap.php
http://www.kuafen.cn/sitemap.php
http://www.zhuqia.cn/sitemap.php
http://www.zacong.cn/sitemap.php
http://www.loshou.cn/sitemap.php
http://www.vn7735.cn/sitemap.php
http://www.yideal.cn/sitemap.php
http://www.panlss.cn/sitemap.php
http://www.lxstbj.cn/sitemap.php
http://www.oucyt.cn/sitemap.php
http://www.ithlw.cn/sitemap.php
http://www.znali.cn/sitemap.php
http://www.sbzwd.cn/sitemap.php
http://www.wuyanghuaji.cn/sitemap.php
http://www.kairunmucai.cn/sitemap.php
http://www.qiaoyihang.cn/sitemap.php
http://www.qidischool.cn/sitemap.php
http://www.machenghao.cn/sitemap.php
http://www.opcmaster.cn/sitemap.php
http://www.script123.cn/sitemap.php

python 爬取某乎某选全部内容相关推荐

  1. 二十一、Python爬取百度文库word文档内容

    @Author:Runsen 百度文库在我们需要查找复制一些文档的时候经常用到,下载要收费,开会员,一个字都不给复制,这个时候初学python的小伙伴肯定有个写个百度文库爬虫的想法,这里我给各位分享一 ...

  2. (详细总结)python爬取 163收件箱邮件内容,收件箱列表的几种方法(urllib, requests, selenium)

    需求:最近有一个需求,需要将163邮箱收件箱里面的所有邮件的内容全部copy下来,整理到一个word里面,不多也就28页的邮件(不要问我为什么有这需求,不告诉你),自己手动去ctrl+ cv 的话,估 ...

  3. python爬取微博动态页面id、内容、评论点赞数存入MongoDB 详解

    目录 前情提要 一.具体操作及注意事项 1.获取解析json文件 2.获取微博内容 3.存入MongoDB数据库 总代码及结果展示 前情提要 本次爬取有未解决的问题 1.用urlencode合成的ur ...

  4. python爬取豆瓣前25个影片内容的正则表达式练习

    通过python正则表达式获取豆瓣top250的第一页的25个影片排名,影片名字,影片连接,导演,主演,上映日期,国家,剧情,评分,评价人数的内容 网页html内容: 1 <ol class=& ...

  5. python 爬取17k网址的个人书架内容

    import requests session = requests.session() data = {'loginName': 账号,'password': 密码 }# url = 'https: ...

  6. python爬取付费隐藏内容_如何用python 爬取网页中隐藏的div内容?

    图片所在的html元素id叫 viewimg ,这个元素是由 view.js 当中的 loadview 函数创建的.该函数吧serverurl跟photosrc这个array里头的元素拼接,并把他设置 ...

  7. 利用Python爬取散文网的文章实例

    这篇文章主要跟大家介绍了利用python爬取散文网文章的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧. 本文主要给大家介绍的是关于python爬取散文网文章 ...

  8. Python爬取并简单分析2024年普通高校招生专业(专业类)选考科目要求

    推荐教材: <Python网络程序设计(微课版)>,ISBN:978-7-302-58312-7,董付国,清华大学出版社,2021年8月出版,京东.当当.淘宝均有销售 配套资源: 教学大纲 ...

  9. steam夏日促销用Python爬取排行榜上的游戏打折信息

    不知不觉,一年一度如火如荼的 steam 夏日促销悄然开始了.每年通过大大小小的促销,我的游戏库里已经堆积满还未下载过的游戏.但所谓"买到就是赚到,G胖一定大亏"的想法日渐流行,指 ...

最新文章

  1. Rsession: R sessions wrapping for Java
  2. 一篇文章回顾智源悟道 1.0 发布全程
  3. html设置页面大小_如何将Word文档页面大小设置为16开?
  4. Qt CheckBox的使用
  5. Acwing第 6 场周赛【未完结】
  6. php-箭头r含义,php中-箭头的用法和意义
  7. mvc html validator,ASP.NET MVC实现Validation验证器扩展
  8. P3100-[USACO14JAN]建造滑雪场【贪心,dp】
  9. 【CDN】域名无法访问,ping不到,tracert不到
  10. 创建完虚拟环境后安装pytorch
  11. bzoj:3224: Tyvj 1728 普通平衡树
  12. 帆软已知年和第几周,算出7天日期如何写?
  13. VC++黑客编程收集的源码集合,只有你想不到的
  14. win8 性能测试软件,win8系统优化软件评测
  15. 2019春第四次课程设计实验报告
  16. openGL之API学习(五十五)凹凸贴图技术
  17. win10查看端口号
  18. Go语言核心之美 3.2-slice切片
  19. Linux网络编程——基于tcp/ip的模拟聊天(文件传输)工具
  20. 计算机学院的加油口号,各学院校运会加油口号

热门文章

  1. 51单片机静态八位数码管显示
  2. 使用vs调用DLL在运行时调用的方法,使用delph调用dll
  3. 布谷鸟算法的c语言,python 实现布谷鸟算法(CS)
  4. 计算机组成原理 改进建议,计算机组成原理实验报告 电子科技大学
  5. 关于python赋值语句、以下选项中不合法的是_关于Python赋值语句,以下选项中不合法的是 ( )_学小易找答案...
  6. 最全的反诈宣传文案都在这里了!
  7. 毫米波雷达估计航向角
  8. 英特尔推出固态硬盘加速应用程序启动
  9. Ubuntu上搭建git服务器
  10. Delphi XE2中调用DLL窗体传递Application句柄