美文网首页
requests+pyquery《安居客爬虫》

requests+pyquery《安居客爬虫》

作者: Wangthirteen | 来源:发表于2018-11-30 17:17 被阅读24次

最开始还以为挺好写,结果调了调,调了两个多点,产生的错误是因为我想直接提取下一页的url,结果一提取就报错

TypeError: list indices must be integers or slices, not str

气的我,直接拼接字符串,最后成了,这种还是直接使用selenium来的方便,不过好在结果和预想中的一样,明天我会分析一下在安居客网上的北京的房价!

import requests
from pyquery import PyQuery as pq
import time

def get_url(url):#请求页面
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'
    }
    try:
        r=requests.get(url,headers=headers,timeout=10)
        r.encoding=r.apparent_encoding
        if r.status_code==200:#如果响应状态码等于200,表示成功
            return r.text
    except:
        print('请求时出现异常')

def one_parser(html):#解析页面
    doc=pq(html)#初始化
    result={}
    result['lp-name']=doc('h3 >span.items-name').text()
    result['adress']=doc('a.address >span.list-map').text()
    result['huxing']=doc('a.huxing >a.huxing').text().strip()#strip()去除左右两边的空字符串
    price=doc('p.price').text()
    result['price']=price
    result['tel']=doc('p.tel').text()
    print(result)
    return result

if __name__ == '__main__':
    MAX_PAGE=19#安居客上北京的楼盘总数为19页,因为没有使用selenium所以手动添加总页数
    url='https://bj.fang.anjuke.com/loupan/s?kw='
    html=get_url(url)#处理第一页的请求
    result=one_parser(html)#解析第一页
    print('开始执行下一页')
    for i in range(1,MAX_PAGE+1):
        url2='https://bj.fang.anjuke.com/loupan/all/'
        end_url=url2+str(i)+'/'#拼接url
        print(end_url)
        time.sleep(3)
        html2=get_url(url2)
        one_parser(html2)
        print('开始执行下一页')
    print('19页完成')

相关文章

  • requests+pyquery《安居客爬虫》

    最开始还以为挺好写,结果调了调,调了两个多点,产生的错误是因为我想直接提取下一页的url,结果一提取就报错 Typ...

  • 小项目 上海二手房数据分析

    本文所使用的数据是安居客的二手房数据(爬虫水平不怎样,一爬就404了,所以这边直接用八爪鱼给抓了数据,爬虫的程序之...

  • 爬取安居客网站,增加Header

    由于安居客网站的反爬虫,这里必须要设置header,而设置header有以下三种办法: 方法一:代码查看通过pyt...

  • 无题

    天南地北安居客, 东拼西凑钱又多!

  • 廿捌-原爬虫项目加入客制化内容,Python 读取 URL 域名

    1. 把客制化内容加到原爬虫中 冲凉前刚完成客制化爬虫:廿柒- 客制化爬虫以及爬虫调参冲完凉转瞬一想就觉得还是把他...

  • 黑板客爬虫闯关通关

    黑板客爬虫闯关通关 爬虫学的好 牢房进的早 前言 黑板客爬虫闯关共5关 http://www.heibanke.c...

  • 基于bs4+requests的安居客爬虫

    1.代码可以直接运行,请下载anaconda并安装,用spyder方便查看变量或者可以查看生成的excel文件2....

  • 安居客 怎样快速收客? -

    你好, 你使用安居客吗? 我这边可以帮你做点击, 咱们这个只是 提高活跃度, 让排名靠前, 提高曝光率!...

  • 北京租房那些坑(干货满满!!!)

    1、安居客&58同城 租房小内幕——首先第一点关于安居客、58同城的租房页面广告巨多,不止如此,这两个租房软件最坑...

  • 安居客反爬

    559错误,验证码,要验证码,换ip也不行,ua,ip都是随机切换的,但是依旧会收到重定向到输入验证码的页面;正在...

网友评论

      本文标题:requests+pyquery《安居客爬虫》

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