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

结果图###

小猪短租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
其中一个是房东所有的信息,注意甄别

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 敲了那么多年的课本实例,总也没有学会编程。这次能参照实例,写了第一个自己觉得有点实际用途的程序,小小的激动一下! ...
    yuruqing阅读 296评论 0 0
  • 开始有一些思路写代码的思路了,还要继续写下去。 最终成果 我的代码 总结 自己在类这一块和函数的基础还是很薄弱,都...
    W_H_W阅读 291评论 0 0
  • 今天是今日有所思的第99天。 如果说以前对李笑来老师是钦佩和景仰,今天的专栏文章又给我当头棒喝,使我顿生膜拜之意!...
    荒原苍狼阅读 243评论 0 0
  • 我一无所有但有人嫉妒 我与世无争仍有人攻击 而我都已经受住了 哪怕天高云淡哪怕不知天高地厚 素来我行我素从无沽名钓...
    游天杰阅读 192评论 1 6
  • 1/2 还在夏天。珍妮和李智信从国外回来的时候,他们一起聚了聚。陈燃,蕙子,珍妮,李智信,小时候出名的大院儿里捣...
    热心网友豆芽菜阅读 117评论 0 0