正则爬取二手房数据

以下代码是二手房的数据,代码仅供参考,很简单,超级简单

#encoding:utf8
import requests
import re
调用网址
def spider(url):
html = requests.get(url).content.decode('utf8')
数据的正则,如果你感觉你用正则匹配不出来,那么你就分开匹配,然后在把所要的正则拼合在一起。我就是这么搞得。
title = re.compile('<h2><a href=".*?" target="_blank">(.*?)</a></h2>.*?<li>.*?<a target="_blank" href=".*?">(.*?)</a>.*?<a target="_blank" href=".*?">(.*?)</a>.*?</li>.*?<li class="font-balck"><span>(.*?)</span><span>(.*?)</span><span>(.*?)</span><span>(.*?)</span></li>.*?<div class="list-info-r">.*?<h3>(.*?)</h3>.*?<p>(.*?)</p>.*?<!-- <span class="btn-contrast">.*?<input name="" type="checkbox" value="" />.*?</span> -->.*?</div>',re.S)
title_zheng = title.findall(html)
循环所要的数据
for a1,a2,a3,a4,a5,a6,a7,aa8,a9 in title_zheng:
用repalce替换数据中的垃圾字母为空
a8=aa8.replace('<em>','').replace('</em>','')
然后插入数据库
sql = "insert into wojia(a1,a2,a3,a4,a5,a6,a7,a8,a9)VALUES('"+a1+"','"+a2+"','"+a3+"','"+a4+"','"+a5+"','"+a6+"','"+a7+"','"+a8+"','"+a9+"')"
print(sql)
下面是循环的网址,1-7是循环的7页
for p in range(1,7):
url = "http://bj.5i5j.com/exchange/n"+str(p)+""
spider(url)


就这么简单,分分钟完事

转载于:https://www.cnblogs.com/lianghongrui/p/7111805.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值