Python自学笔记(八)----------数据提取及数据存储
本帖最后由 l2430478 于 2021-1-11 11:23 编辑笔记七已经爬取到数据,现在需要进行数据提取。
打开练习网址:http://www.santostang.com/右键检查。
单击左上角的鼠标键按钮,后在页面上单击想要的数据,下面的Elements会出现相应的code在的地方,就定位到想要的元素了。
我们复制教程代码,看能提取到什么?
#!usr/bin/python
#coding: UTF-8
import requests
from bs4 import BeautifulSoup #从bs4这个库中导入BeautifulSoup
link = "http://www.santostang.com/" #爬取的网址
headers = { 'User-Agent': 'Mozilla/5.0 (Windows;U; Windows NT6.1;en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'} #模拟用户浏览器性质
r = requests.get(link,headers = headers)
soup = BeautifulSoup(r.text,"lxml") #使用BeautifulSoup解析这段代码
title = soup.find("h2",class_="uptop").a.text.strip()
print (title)
alt+回车后,提取到数据 :《网络爬虫:从入门到实践》一书勘误。
分析代码含义,在实践网页中右键 查看网页源代码。
发现这里的数值和代码里有关联 title = soup.find("h2",class_="uptop")
我们尝试修改,看是否能提取其他数据。
#!usr/bin/python
#coding: UTF-8
import requests
from bs4 import BeautifulSoup #从bs4这个库中导入BeautifulSoup
link = "http://www.santostang.com/" #爬取的网址
headers = { 'User-Agent': 'Mozilla/5.0 (Windows;U; Windows NT6.1;en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'} #模拟用户浏览器性质
r = requests.get(link,headers = headers)
soup = BeautifulSoup(r.text,"lxml") #使用BeautifulSoup解析这段代码
title = soup.find("h1",class_="post-title").a.text.strip()
print (title)
提取了了新的数据如下:第四章 – 4.3 通过selenium 模拟浏览器抓取
分析: 这里用到BeautifulSoup这个库对爬下来的页面进行解析。首先需要导入这个库,然后把HTML代码转化为soup对象,接下来用soup.find("h 1 ", class_一”post-title").a.text,strip()得到第一篇文章的标题,并且一打印出来。 对初学者来说,使用eautifulSoup从网页中提取需要的数据更加简单易用。
-------------------数据存储(这些代码不需要你全部理解,会用就行,然后逐步理解更透彻,就可以进修改利用)
存储到本地的txt文件非常简单,在第二步的基础上加上3行代码就可以把这个字符串保存在text中,并存储到本地。txt文件地址应该和你的Python文件放在同一个文件夹。文件会自动生成,放在默认文件夹中。
import requests
from bs4 import BeautifulSoup #从bs4这个库中导入BeautifulSoup
link = "http://www.santostang.com/" #爬取的网址
headers = { 'User-Agent': 'Mozilla/5.0 (Windows;U; Windows NT6.1;en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'} #模拟用户浏览器性质
r = requests.get(link,headers = headers)
soup = BeautifulSoup(r.text,"lxml") #使用BeautifulSoup解析这段代码
title = soup.find("h1",class_="post-title").a.text.strip()
print (title)
with open('title.txt', "a+" ) as f:
f.write(title)
f.close()
cmd即显示了默认位置:
至此,一个简单的爬虫完成了。
学习下 准备按照你的方法试下 按照你的方式学习下 python库封装好直接用就是方便 学习学习 哇,好像把你的每一篇都投币啊,我的天,太感谢了 狐白本白 发表于 2021-1-11 15:09
哇,好像把你的每一篇都投币啊,我的天,太感谢了
谢谢信任我也是尽自己所能分享给大家 把复杂的知识简单化可能带某某某人顺利起步。 楼主的文章很好,很值得学习! l2430478 发表于 2021-1-11 15:12
谢谢信任我也是尽自己所能分享给大家 把复杂的知识简单化可能带某某某人顺利起步。
吖,可以带某某某某我顺利起步嘛,我还没开始学,不过马上 狐白本白 发表于 2021-1-11 21:18
吖,可以带某某某某我顺利起步嘛,我还没开始学,不过马上
没问题 跳过基础跟着笔记七直接开始
页:
[1]
2