从小猪短租爬取一个页面的信息

一、确定爬取页面

目标页面

页面随机选取,学习用途,如侵权联系俺...

二、代码

from bs4 import BeautifulSoup
import requests

url = 'http://xm.xiaozhu.com/fangzi/1639603035.html'
wb_data = requests.get(url)
soup = BeautifulSoup(wb_data.text, 'lxml')
title = soup.select('.pho_info > h4:nth-of-type(1) > em:nth-of-type(1)')
address = soup.select('.pr5')
rent_money = soup.select('.day_l')
image = soup.select('#curBigImage')
owner_pic = soup.select('.member_pic > a > img')
owner_id = soup.select('a.lorder_name')
owner_gender = soup.select('.member_pic > div')

#get方法获取的仍然是一个列表,还要先将里面的字符串取出来
gender = owner_gender[0].get('class')[0]

def judge_gender(a_gender):
    if a_gender == 'member_ico1':
        return '女'
    else:
        return '男'

data = {
    '标题' : title[0].get_text(),
    '地址' : address[0].get_text().replace('\n','').replace(' ',''),
    '租金' : rent_money[0].get_text(),
    '图片' : image[0].get('src'),
    '房东图片' : owner_pic[0].get('src'),
    '房东昵称' : owner_id[0].get_text(),
    '房东性别' : judge_gender(gender)
}

for item in data:
    print(item,data[item])

三、运行结果

运行结果

四、小结

爬取一个页面的难度不大,只需要按照之前学到的知识确定css selector即可。对于性别的判断,分别审查两个性别的页面就可以发现:

女性 <div class="member_ico1"></div>
男性 <div class="member_ico"></div>

通过一个简单的if/else语句就可以判断了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,111评论 25 709
  • 在本文中我会尝试如何从0数据开始到获取百万页面,进行用户数据分析、建模,再数据信息化、可视化,生成用户画像分析用户...
    hirainchen阅读 25,613评论 121 689
  • 文:迷妹乔小喵 很喜欢这个电影的名字,也很好奇,怎么可以28岁都可以不用成年,永远做个孩子,真好。 原来电影和我想...
    迷妹乔小喵阅读 3,607评论 0 0
  • 小安是意大利人,来到我们公司用了他们的机器,他来看一下。他跑上楼问:可以进么!我就请他进来坐了。他说想了解一下...
    海壳阅读 1,733评论 0 0
  • 记忆里,我与老王有过许多次争吵,没有轰轰烈烈,只是些吵吵闹闹的小事,所以,与其说是争吵,拌嘴可能更为合适。 小小探...
    SissiSSSun阅读 3,427评论 0 0

友情链接更多精彩内容