爬《十万个为什么》
学习python的第十二、十三天 (2020.04.17-04.18)
需求分析
目标网站(https://10why.net/)
内容:爬网页十万个为什么,爬不同分类下的问题及答案,将得到的结果保存到本地文本文件中。
>任务要求:
1.使用requests获取网页源代码
2.使用XPath
3.使用python读/写CSV文件
网站首页
网站目录页(交通)
问题解释页
爬取流程图
爬取首页(得到目录的url,并保存目录名称,为保存到本地文本文件命名做铺垫)》》》》爬取分类的目录页(得到为什么问题,并用列表保存每个问题的标题,及问题答案的地址)》》》》问题解释页(爬取答案,保存到列表当中)》》》》创建文件夹(新建文件夹《十万个为什么》,在文件夹里新建目录标题文本文件,最后将属于其目录下的问题及解释写入该文件中)
核心代码
#coding:utf-8
#coding: GBK
import re
import requests
import lxml.html
from multiprocessing.dummy import Pool
import os #创建文件夹需要引用os库
why10 =requests.get('https://10why.net/').content.decode()
# print(why10)
why_menu=lxml.html.fromstring(why10)
menu =why_menu.xpath('//div[@class="box-inner-p"]/h2[@class="entry-title h3"]/a/text()')# 获取十万个为什么目录名称
menu_url=re.findall(