Merge branch 'master' of https://github.com/ZouJiu1/zhihu_spider_selenium
commit
1919725648
105
README.md
105
README.md
|
@ -1,84 +1,84 @@
|
|||
# 爬取知乎的内容
|
||||
考虑到将写的内容爬取下来,保存起来的避免误删,算是个备份的,而且方便查找,阅读起来也更方便,使用起来也好很多
|
||||
|
||||
考虑到将写的内容爬取下来,保存起来的避免误删,算是个备份的,而且方便查找,阅读起来也更方便,使用起来也好很多 <br>
|
||||
|
||||
## 亮点
|
||||
1、保存**回答**到**pdf**、**markdown**,并保存相应的图片、codes以及website,排版基本按照网页,**支持保存数学公式到markdown**,回答会保存提问和自己的回答
|
||||
1、保存**回答**到**pdf**、**markdown**,并保存相应的图片、codes以及website,排版基本按照网页,**支持保存数学公式到markdown**,回答会保存提问和自己的回答<br>
|
||||
|
||||
2、保存**article**到**pdf**、**markdown**,并保存相应的图片、codes以及website,排版基本按照网页,**支持保存数学公式到markdown**
|
||||
2、保存**article**到**pdf**、**markdown**,并保存相应的图片、codes以及website,排版基本按照网页,**支持保存数学公式到markdown**<br>
|
||||
|
||||
3、保存**想法**到text并保存相应的图片,最后对所有text进行汇总到一个档案
|
||||
3、保存**想法**到text并保存相应的图片,最后对所有text进行汇总到一个档案<br>
|
||||
### 爬取到的想法展示
|
||||
按照发布时间分目录存放,保存了图片以及文本文件
|
||||
<a href="./think">点击即可进入think目录查看的</a>
|
||||
<a href="https://www.zhihu.com/pin/1600115571529302017">2023-01-21 13:01</a>
|
||||
<img src="./showimg/think1.png" width="39%"/> <img src="./showimg/think2.png" width="39%"/> <img src="./showimg/think3.png" width="60%"/>
|
||||
按照发布时间分目录存放,保存了图片以及文本文件<br>
|
||||
<a href="./think">点击即可进入think目录查看的</a><br>
|
||||
<a href="https://www.zhihu.com/pin/1600115571529302017">2023-01-21 13:01</a><br>
|
||||
<img src="./showimg/think1.png" width="39%"/> <img src="./showimg/think2.png" width="39%"/> <img src="./showimg/think3.png" width="60%"/><br>
|
||||
|
||||
### 爬取到的article展示
|
||||
<a href="./article">点击即可进入article目录查看的</a>
|
||||
每篇article都附带了修改时间和IP属地
|
||||
<a href="./article">点击即可进入article目录查看的</a><br>
|
||||
每篇article都附带了修改时间和IP属地<br>
|
||||
<img src="./showimg/article1.png" width="60%"/>
|
||||
|
||||
<span style="color:#7a3e9d;"><b>保存到Markdown格式的数学公式、codes和图片</b></span>
|
||||
<a href="https://zhuanlan.zhihu.com/p/605710105">泰勒公式推导方式</a>
|
||||
<a href="https://zhuanlan.zhihu.com/p/622433720">c++_set运算符重载</a>
|
||||
<img src="./showimg/article2.png" width="39%"/><img src="./showimg/article4.png" width="39%"/>
|
||||
<span style="color:#7a3e9d;"><b>保存到Markdown格式的数学公式、codes和图片</b></span><br>
|
||||
<a href="https://zhuanlan.zhihu.com/p/605710105">泰勒公式推导方式</a> <br>
|
||||
<a href="https://zhuanlan.zhihu.com/p/622433720">c++_set运算符重载</a><br>
|
||||
<img src="./showimg/article2.png" width="39%"/><img src="./showimg/article4.png" width="39%"/><br>
|
||||
|
||||
<span style="color:#7a3e9d;"><b>保存到PDF格式的,标题下面是网址</b></span>
|
||||
<img src="./showimg/article3.png" width="39%"/><img src="./showimg/article5.png" width="39%"/>
|
||||
<span style="color:#7a3e9d;"><b>保存到PDF格式的,标题下面是网址</b></span><br>
|
||||
<img src="./showimg/article3.png" width="39%"/><img src="./showimg/article5.png" width="39%"/><br>
|
||||
|
||||
### 爬取到的回答展示
|
||||
<a href="./answer">点击即可进入answer目录查看的</a>
|
||||
每篇回答也附带了修改时间和IP属地
|
||||
<a href="./answer">点击即可进入answer目录查看的</a><br>
|
||||
每篇回答也附带了修改时间和IP属地<br>
|
||||
|
||||
<span style="color:#7a3e9d;"><b>保存到Markdown格式的数学公式、codes和图片</b></span>
|
||||
<a href="https://www.zhihu.com/question/605881267/answer/3075609886">矩阵A正定,证A的逆矩阵和伴随矩阵也正定</a>
|
||||
<a href="https://www.zhihu.com/question/30315894/answer/3089595368">Visual_Studio_Code_怎么编写运行_C、C++_程序</a>
|
||||
<img src="./showimg/answer1.png" width="39%"/><img src="./showimg/answer2.png" width="60%"/>
|
||||
<span style="color:#7a3e9d;"><b>保存到Markdown格式的数学公式、codes和图片</b></span><br>
|
||||
<a href="https://www.zhihu.com/question/605881267/answer/3075609886">矩阵A正定,证A的逆矩阵和伴随矩阵也正定</a> <br>
|
||||
<a href="https://www.zhihu.com/question/30315894/answer/3089595368">Visual_Studio_Code_怎么编写运行_C、C++_程序</a><br>
|
||||
<img src="./showimg/answer1.png" width="39%"/><img src="./showimg/answer2.png" width="60%"/><br>
|
||||
|
||||
<span style="color:#7a3e9d;"><b>保存到PDF格式的,标题下面是网址</b></span>
|
||||
<img src="./showimg/answer3.png" width="39%"/><img src="./showimg/answer4.png" width="39%"/>
|
||||
<span style="color:#7a3e9d;"><b>保存到PDF格式的,标题下面是网址</b></span><br>
|
||||
<img src="./showimg/answer3.png" width="39%"/><img src="./showimg/answer4.png" width="39%"/><br>
|
||||
|
||||
## 环境以及安装
|
||||
**win10** **python**
|
||||
1、点击下面这个网页,安装miniconda也就是安装python,下载好以后安装即可,在安装时需要加入到系统环境变量,勾选下图第二个框即可。 [https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py310_23.3.1-0-Windows-x86_64.exe](https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py310_23.3.1-0-Windows-x86_64.exe)
|
||||
<img src="./showimg/miniconda.png" width="60%"/>
|
||||
2、接着需要修改python安装的路径,将msedgedriver\\.condarc这个档案放到根目录`C:\Users\username`即可,另外再打开一个cmd或者PowerShell
|
||||
运行`conda clean -i`输入`Y`即可,此时Python已经可以使用了
|
||||
<img src="./showimg/condarc.png" width="26%"/>
|
||||
3、安装Python相关的调用库,另外再打开一个cmd或者PowerShell,运行
|
||||
<code>cd C:\Users\usrname\zhihu
|
||||
pip install -r .\requirement.txt</code>
|
||||
**win10** **python** <br>
|
||||
1、点击下面这个网页,安装miniconda也就是安装python,下载好以后安装即可,在安装时需要加入到系统环境变量,勾选下图第二个框即可。 <br>[https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py310_23.3.1-0-Windows-x86_64.exe](https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py310_23.3.1-0-Windows-x86_64.exe)<br>
|
||||
<img src="./showimg/miniconda.png" width="60%"/><br>
|
||||
2、接着需要修改python安装的路径,将msedgedriver\\.condarc这个档案放到根目录`C:\Users\username`即可,另外再打开一个cmd或者PowerShell<br>
|
||||
运行`conda clean -i`输入`Y`即可,此时Python已经可以使用了<br>
|
||||
<img src="./showimg/condarc.png" width="26%"/> <br>
|
||||
3、安装Python相关的调用库,另外再打开一个cmd或者PowerShell,运行<br>
|
||||
<code>cd C:\Users\usrname\zhihu<br>
|
||||
pip install -r .\requirement.txt</code><br>
|
||||
|
||||
## 使用
|
||||
### 1、登录
|
||||
运行以下内容,这一步是**手动**操作,需要人工输入账号和密码,然后点击登录就行,登录以后会自动保存好cookie,以后爬取时就不用重复登录了,保存的cookie在这个目录的**cookie**,产生的档案是**cookie_zhihu.pkl**
|
||||
运行以下内容,这一步是**手动**操作,需要人工输入账号和密码,然后点击登录就行,登录以后会自动保存好cookie,以后爬取时就不用重复登录了,保存的cookie在这个目录的**cookie**,产生的档案是**cookie_zhihu.pkl**<br>
|
||||
<h3><code><b style="color:#7a3e9d;">python.exe crawler.py </b></code></h3>
|
||||
<span style="color:#7a3e9d;">运行以后会弹出一个浏览器,自动打开知乎页面以后就可以开始登录,下图所示就是登录页面,两类登录方式都可以,只要能登录就行,<a style="color:black;"><b>点击登录以后,不要再操作页面,键盘或鼠标都不可以,登录时间默认给了130s时间,130秒以后会自动退出,然后查看目录cookie是否保存好cookie_zhihu.pkl,保存好就可以开始爬取了。</b></a></span>
|
||||
<br>
|
||||
<img src="./showimg/login.png" width="29%"/>
|
||||
|
||||
### 2、每项单独爬取
|
||||
爬取一旦开始就自动运行了,爬取窗口一般不能最小化,可以做其他事情的
|
||||
**爬取知乎想法**
|
||||
### 2、每项单独爬取 <br>
|
||||
爬取一旦开始就自动运行了,爬取窗口一般不能最小化,可以做其他事情的 <br>
|
||||
**爬取知乎想法** <br>
|
||||
|
||||
默认的爬取每篇想法的睡眠时间是 **6s*图片的数量** 以上
|
||||
默认的爬取每篇想法的睡眠时间是 **6s*图片的数量** 以上 <br>
|
||||
`
|
||||
python.exe crawler.py --think
|
||||
`
|
||||
|
||||
**爬取知乎回答**
|
||||
默认的爬取每篇回答的睡眠时间是**16s**以上,这边实际爬取耗时平均是每篇 **30s**
|
||||
**爬取知乎回答** <br>
|
||||
默认的爬取每篇回答的睡眠时间是**16s**以上,这边实际爬取耗时平均是每篇 **30s**,每个图片需要6s <br>
|
||||
`
|
||||
python.exe crawler.py --answer
|
||||
`
|
||||
|
||||
**爬取知乎的article**
|
||||
默认的爬取每篇article的睡眠时间是**16s**以上,这边实际爬取130多篇,耗时平均是每篇 **33.096s**
|
||||
**爬取知乎的article** <br>
|
||||
默认的爬取每篇article的睡眠时间是**16s**以上,这边实际爬取130多篇,耗时平均是每篇 **33.096s**,每个图片需要6s <br>
|
||||
`
|
||||
python.exe crawler.py --article
|
||||
`
|
||||
|
||||
### 3、三项一起爬取的
|
||||
### 3、三项一起爬取的 <br>
|
||||
`
|
||||
python.exe crawler.py --think --article --answer
|
||||
`
|
||||
|
@ -89,10 +89,17 @@ python.exe crawler.py --think --article --answer
|
|||
若是过了很长时间,发布了很多篇,此时一篇一篇加入不太方便,可以直接将<b>article/article.txt</b>这个档案重命名到<b>article/article_2023_06_20.txt</b>,或者重命名answer.txt,然后运行爬取程序即可,上面提到了已经爬取过的不会重复爬取,所以实际只会爬取最近写好的article或者回答,想法则会直接跳过已经爬取的内容。
|
||||
|
||||
### 目录
|
||||
<b>think</b>:该目录存放爬取到的想法内容
|
||||
<b>article</b>:该目录存放article的website以及爬取到的内容
|
||||
<b>answer</b>:该目录存放回答的website以及爬取到的内容
|
||||
<b>think</b>:该目录存放爬取到的想法内容<br>
|
||||
<b>article</b>:该目录存放article的website以及爬取到的内容<br>
|
||||
<b>answer</b>:该目录存放回答的website以及爬取到的内容<br>
|
||||
|
||||
### 爬取注意事项
|
||||
1、需要较好的网速,本机网速测验是下载100Mbps,上传60Mbps,低点也可以的,不是太慢太卡就行[https://www.speedtest.cn/](https://www.speedtest.cn/)
|
||||
2、爬取时设置了睡眠时间, 避免给知乎服务器带来太大压力,可以日间调试好,然后深夜运行爬取人少, 给其他小伙伴更好的用户体验, 避免知乎顺着网线过来找人,默认**6**s
|
||||
1、需要较好的网速,本机网速测验是下载100Mbps,上传60Mbps,低点也可以的,不是太慢太卡就行[https://www.speedtest.cn/](https://www.speedtest.cn/)<br>
|
||||
2、爬取时设置了睡眠时间, 避免给知乎服务器带来太大压力,可以日间调试好,然后深夜运行爬取人少, 给其他小伙伴更好的用户体验, 避免知乎顺着网线过来找人,默认**6**s<br>
|
||||
|
||||
### blogs
|
||||
[https://www.aliyundrive.com/s/NikyVRJq8JV 阿里云分享的](https://www.aliyundrive.com/s/NikyVRJq8JV) `提取 0h3l` <br>
|
||||
[爬取知乎发布的想法和文篇和回答](https://zhuanlan.zhihu.com/p/641141948)<br>
|
||||
[爬取CSDN发布的文篇](https://zhuanlan.zhihu.com/p/641140892)<br>
|
||||
[https://zoujiu.blog.csdn.net/article/details/131514422](https://zoujiu.blog.csdn.net/article/details/131514422)<br>
|
||||
[https://zoujiu.blog.csdn.net/article/details/131521909](https://zoujiu.blog.csdn.net/article/details/131521909)<br>
|
||||
|
|
Loading…
Reference in New Issue