ccph 发表于 2018-8-3 17:14

【Python】赶集网二手房爬虫 (可扩展)

最近接了个义务单,是关于赶集网的二手房爬虫。


github:https://github.com/CcphAmy/pythonDemo



import requests
import os

from bs4 import BeautifulSoup



class GanJi():
    """docstring for GanJi"""

    def __init__(self):
      super(GanJi, self).__init__()

    def get(self,url):

      user_agent = 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36'
      headers    = {'User-Agent':user_agent}
      
      webData    = requests.get(url + 'o1',headers=headers).text
      soup       = BeautifulSoup(webData,'lxml')
      
      
      sum      = soup.find('span',class_="num").text.replace("套","")
      ave      = int(sum) / 32
      forNum   = int(ave)

      if forNum < ave:
            forNum = forNum + 1


      for x in range(forNum):
            webData    = requests.get(url + 'o' + str(x + 1),headers=headers).text
            soup       = BeautifulSoup(webData,'lxml')
            find_list= soup.find('div',class_="f-main-list").find_all('div',class_="f-list-item ershoufang-list")

            for dl in find_list:
               
                print(dl.find('a',class_="js-title value title-font").text,end='|') # 名称

                # 中间 5 个信息
                tempDD = dl.find('dd',class_="dd-item size").find_all('span')
                for tempSpan in tempDD:
                  if not tempSpan.text == '' :
                        print(tempSpan.text.replace("\n", ""),end='|')

               
                print(dl.find('span',class_="area").text.replace(" ","").replace("\n",""),end='|') # 地址
               
                print(dl.find('div',class_="price").text.replace(" ","").replace("\n",""),end='|') # 价钱
               
                print(dl.find('div',class_="time").text.replace(" ","").replace("\n",""),end="|") # 平均
               
                print("http://chaozhou.ganji.com" + dl['href'],end="|") # 地址

                print(str(x + 1))

if __name__ == '__main__':
    temp = GanJi()
    temp.get("http://chaozhou.ganji.com/fang5/xiangqiao/")

ccph 发表于 2018-8-6 17:47

l12h1 发表于 2018-8-6 17:27
谢谢大大分享!
我觉得不同城市可以用汉字转拼音的方法 来构建url
然后列一个主要城市的列表 抓取不同城 ...

具体可以完善,而且类型还可以更改

l12h1 发表于 2018-8-6 17:27

谢谢大大分享!
我觉得不同城市可以用汉字转拼音的方法 来构建url
然后列一个主要城市的列表 抓取不同城市的数据
最后持久化一下就行

s35485677 发表于 2018-8-3 17:21

不会用啊

andyzgs 发表于 2018-8-3 17:22

非常不错,下载学习下。。。

s35485677 发表于 2018-8-3 17:24

俺想买房,能不能教教怎么用啊?

陌森 发表于 2018-8-3 17:27

感谢分享

waipojie123 发表于 2018-8-3 17:28

感谢分享

kk1212 发表于 2018-8-3 17:31

Python确实是非常的强大,比PHP强大多了

Jerry_bean 发表于 2018-8-3 17:39

要是支持手动输入城市,选择需要查询的页码总数,会更方便一些吧

mengsiyiren 发表于 2018-8-3 17:40

不会用系列

zs820553471 发表于 2018-8-3 20:32

还有没有这样的单,i want
页: [1] 2 3 4 5
查看完整版本: 【Python】赶集网二手房爬虫 (可扩展)