配置设备与页面的关联关系
        详情请参考
        http://mp.weixin.qq.com/wiki/12/c8120214ec0ba08af5dfcc0da1a11400.html

        :param page_ids: 待关联的页面列表
        :param bind: 关联操作标志位， 0为解除关联关系，1为建立关联关系
        :param append: 新增操作标志位， 0为覆盖，1为新增
        :param device_id: 设备编号，若填了UUID、major、minor，则可不填设备编号，若二者都填，则以设备编号为优先
        :param uuid: UUID
        :param major: major
        :param minor: minor
        :return: 返回的 JSON 数据包

def bind_device_pages(self, page_ids, bind, append, device_id=None,
                          uuid=None, major=None, minor=None):
        """
        配置设备与页面的关联关系
        详情请参考
        http://mp.weixin.qq.com/wiki/12/c8120214ec0ba08af5dfcc0da1a11400.html

        :param page_ids: 待关联的页面列表
        :param bind: 关联操作标志位， 0为解除关联关系，1为建立关联关系
        :param append: 新增操作标志位， 0为覆盖，1为新增
        :param device_id: 设备编号，若填了UUID、major、minor，则可不填设备编号，若二者都填，则以设备编号为优先
        :param uuid: UUID
        :param major: major
        :param minor: minor
        :return: 返回的 JSON 数据包
        """
        if not isinstance(page_ids, (tuple, list)):
            page_ids = [page_ids]
        data = {
            'page_ids': page_ids,
            'bind': int(bind),
            'append': int(append),
            'device_identifier': {
                'device_id': device_id,
                'uuid': uuid,
                'major': major,
                'minor': minor
            }
        }
        return self._post(
            'shakearound/device/bindpage',
            data=data
        )