大家好,我是一名90后爬虫学习爱好者,现从事通信相关工作。
希望能够在这个平台上和大家一起分享爬虫开发的乐趣。
爬取新闻内容并写入word文档
准备工作:
1、pycharm的安装
2、相关模块的安装:requests、BeautifulSoup4、docx
3、对HLML有基本的了解
思路分析:
1、使用requests请求网页
2、使用BeautifulSoup解析网页
3、查找需要的内容并写入word文档中
代码实现:
#首先导入需要的模块import requestsfrom bs4 import BeautifulSoupimport docx
#实例化一个docx文档,更多使用功能请学习docx模块
doc = docx.Document()
#确定目标网页
url = 'https://news.sina.com.cn/w/2020-12-17/doc-iiznezxs7330537.shtml'
#UA伪装
user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36'
headers = {'User-Agent': user_agent}
#利用requests开始请求网页内容
res = requests.get(url, headers=headers)
#检查状态码是否为200,以确认是否请求成功。if res.status_code == requests.codes.ok:
print("---网页请求成功---n---开始解析---")
#如果网页编码形式不一样,会造成网页内容部分乱码
res.encoding = res.apparent_encoding
#使用lxml解析网页(推荐)
soup = BeautifulSoup(res.text, 'lxml')
#使用find方法查找需要的内容
news = soup.find('div', class_='article')
print("---解析成功---n---开始写入---")
#将获取到的内容写入word文档中
doc.add_paragraph(news.get_text())
#结束并保存word文档
doc.save('新浪新闻.docx')
print("---写入成功---")
![2c71377844800325a7675f53e025e30c.png](https://i-blog.csdnimg.cn/blog_migrate/60a8dc39a23598db1d47a8e4c4178be0.jpeg)
![9bc9b0e56fb3c333536dbdd8a9b3c804.png](https://i-blog.csdnimg.cn/blog_migrate/5f7825e0bc43074d08dc7fcec088b97f.png)
![64e48af220c965399f39373395d6f175.png](https://i-blog.csdnimg.cn/blog_migrate/d60bba2b62d19ae236754b7cd95fbbe7.jpeg)