网页数据抓取软件(爬网页和网页数据抓取的区别(一)(图))
优采云 发布时间: 2022-03-01 21:16网页数据抓取软件(爬网页和网页数据抓取的区别(一)(图))
提示:文章写好后可以自动生成目录,如何生成可以参考右边的帮助文档
文章目录
前言
网页数据抓取目标:抓取网站中感兴趣的数据
数据特征:噪声较多,标签较弱,无用信息很多,但数据量很大。
网络爬虫和网络数据抓取的区别:
爬取网页:爬取所有网页,然后搜索引擎可以搜索到
网页抓取:对网页中的特定数据感兴趣
一、数据爬虫
主题:网页会有防刮方法。
常用方法:使用无头(像浏览器但没有 GUI)
from selenium import webdriver
chrome_options=webdriver.ChromeOptions()
chrome_options.headless=True#不需要图形界面
chrome=webdriver.Chrome(chrome_options=chrome_options)
page=chrome.get(url)
大量ip访问我的网站异常
所以需要很多ip(取自云端)
二、实例分析
page=BeautifuSoup(open(hetml_pathh,'r'))#专门用来解析html的东西
links=[a['href']for a in page.find_all('a','list-card-link')]#将所有a元素的类别数'list-card-link',返回他的href
ids=[l.split('/')[-2].split('_')[0] for l in links]
将 id 放入网页以查找有关特定房屋的信息
sold_items=[a.text for a in page.find('div','ds-home-details-chip').find('p').find_all('span')]
#找到所有的div的容器,再找到'ds-home-details-chip',把里面的p找出来,再找到span
for item in soid_items:
if 'sold:'in item:
result['Sold Price']=item.split(' ')[1]
if'Sold on 'in item:
result['Sold On']=item.split(' ')[-1]
抓取图片
p=r'正则表达式的匹配.jpg'
ids=[a.split('-')[0] for a in re.findall(p,html)]
urls=[f'正则表达式的匹配.jpg' for id in ids]
总结
提示:这是 文章 的摘要:
通过 API 或网页抓取获取数据