| 207 | |
| 208 | # 领取气泡水滴 |
| 209 | def receive_droplet_extra(self): |
| 210 | temporary_number = -1 # 用于判断两次浇水,奖励是否有变化 |
| 211 | countdown_time = 0 |
| 212 | receive_signal = False |
| 213 | for _ in range(50): |
| 214 | url = 'https://app.dewu.com/hacking-tree/v1/droplet-extra/info' |
| 215 | response = self.session.get(url, headers=self.headers) |
| 216 | response_dict = response.json() |
| 217 | # myprint(response_dict) |
| 218 | if response_dict.get('code') != 200: |
| 219 | myprint(f"获取气泡水滴信息失败! {response_dict}") |
| 220 | return |
| 221 | data = response_dict.get('data') |
| 222 | receivable = data.get('receivable') |
| 223 | if receivable is True: # 判断今天是否可领取 |
| 224 | if data.get('dailyExtra'): # 第一次领取时 |
| 225 | water_droplet_number = data.get('dailyExtra').get( |
| 226 | 'totalDroplet') |
| 227 | else: # 第二次领取时 |
| 228 | water_droplet_number = data.get('onlineExtra').get( |
| 229 | 'totalDroplet') |
| 230 | # 如果二者相等,说明浇水成功 但奖励没变化 不再浇水 直接领取 或者 接受到直接领取信号 |
| 231 | if temporary_number == water_droplet_number or receive_signal: |
| 232 | myprint(f"当前可领取气泡水滴{water_droplet_number}g") |
| 233 | url = 'https://app.dewu.com/hacking-tree/v1/droplet-extra/receive' |
| 234 | response = self.session.post(url, headers=self.headers) |
| 235 | response_dict = response.json() |
| 236 | # myprint(response_dict) |
| 237 | if response_dict.get('code') != 200: |
| 238 | countdown_time += 60 |
| 239 | if countdown_time > 60: # 已经等待过60s,仍未领取成功,退出 |
| 240 | myprint(f"领取气泡水滴失败! {response_dict}") |
| 241 | return |
| 242 | myprint(f'等待{countdown_time}秒后领取') |
| 243 | time.sleep(countdown_time) |
| 244 | continue |
| 245 | myprint( |
| 246 | f"领取气泡水滴成功! 获得{response_dict.get('data').get('totalDroplet')}g水滴") |
| 247 | countdown_time = 0 # 领取成功,重置等待时间 |
| 248 | continue |
| 249 | temporary_number = water_droplet_number |
| 250 | myprint(f'当前气泡水滴{water_droplet_number}g,未满,开始浇水') |
| 251 | if not self.waterting(): # 浇水失败 |
| 252 | receive_signal = True # 给出直接领取信号 |
| 253 | time.sleep(0.5) |
| 254 | continue # 浇水成功后查询信息 |
| 255 | # 今天不可领取了,退出 |
| 256 | water_droplet_number = response_dict.get('data').get( |
| 257 | 'dailyExtra').get('totalDroplet') |
| 258 | myprint( |
| 259 | f"{response_dict.get('data').get('dailyExtra').get('popTitle')}," |
| 260 | f"已经积攒{water_droplet_number}g水滴!") |
| 261 | return |
| 262 | |
| 263 | # 浇水充满气泡水滴 |
| 264 | def waterting_droplet_extra(self): |