美文网首页
Python实战计划学习笔记-爬取租房信息

Python实战计划学习笔记-爬取租房信息

作者: zetro | 来源:发表于2016-05-27 12:35 被阅读43次

    结果图###

    小猪短租info.png

    代码展示###

    #!/usr/bin/env python
    #-*- coding: utf-8 -*-
    
    from bs4 import BeautifulSoup
    import requests
    
    url = 'http://sh.xiaozhu.com/fangzi/2849194363.html'
    pic_lib = []
    
    def get_text(item):
        return '' if item == 0 else ''.join(item[0].get_text().replace('\n',''))
    
    def get_pic(items):
        item_lib=[]
        if items == 0:
            return (item_lib)
        else:
            for item in items:
                item_lib.append(item.get('data-bigimg').replace('00,800,533','11'))
            return (item_lib)
    
    def get_gender(item):
        if item == 0 :
            return ''
        else :
            if 'girl' in str(item[0].get('class')) :
                return ('女房东')
            else:
                return ('男房东')
    
    
    
    web_data = requests.get(url)
    soup = BeautifulSoup(web_data.text,'html.parser')
    titles = soup.select('div.pho_info > h4 > em')
    areas = soup.select('div.pho_info > p > span.pr5')
    prices = soup.select('span.detail_avgprice')
    pics = soup.select('div.pho_show_r > div > ul > li > img')
    names = soup.select('div.w_240 > h6 > a')
    genders =soup.select('h6 > span')
    
    data={
        'titles' : get_text(genders),
        'areas' : get_text(areas),
        'prices' : get_text(prices),
        'names' : get_text(names),
        'pics' : get_pic(pics),
        'genders' : get_gender(genders)
    }
    
    print (data)
    

    问题总结###

    1.在爬取图片的时候,

    PC端显示的地址为:http://image.xiaozhustatic2.com/00,800,533/6,0,0,646,1799,1200,38baf736.jpg
    模拟移动端的地址为:
    http://image.xiaozhustatic2.com/11/6,0,51,625,1799,1200,f02a7f1d.jpg
    

    经过观察后可以看出来不同,并用repalce('','')做处理。
    更好的处理方式应该是用正则。

    2.在爬取移动端的时候,并无法确定到title的位置,推测可能是JS控制的。


    title.jpg
    源代码.jpg

    解决方式:在network里面的找相关的response。

    只需要搜索:index?jsonp
    其中一个是房东所有的信息,注意甄别
    

    在这个里面隐藏着一些信息......

    相关文章

      网友评论

          本文标题:Python实战计划学习笔记-爬取租房信息

          本文链接:https://www.haomeiwen.com/subject/egzxdttx.html