李沐【实用机器学习】1.3网页数据抓取

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

网页数据抓取目标:在一个网站里面感兴趣的数据抓取出来
数据特点:噪点较多,标签较弱,很多无用信息,但是数据量大。
爬网页和网页数据抓取的区别:
爬网页:把所有的网页爬下来,然后之后搜索引擎就可以去搜索到它
网页数据抓取:对网页中特定的数据感兴趣


一、数据抓取工具

主题:网页会有一个反扒方法。
通常方法:使用headless(就相当于一个游览器但没有图形界面)

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或者网页抓取获取数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值