├── .gitignore ├── LICENSE ├── README.md ├── ansdata ├── answer_data.json ├── answer_data.txt ├── answer_data0.json ├── answer_data0.txt ├── good_data.json ├── name_list.json ├── name_list.txt └── name_list_0.txt ├── get_more_data.py ├── package-lock.json ├── package.json ├── public ├── index.html └── manifest.json ├── run.py ├── src ├── App.css ├── home │ ├── index.js │ └── store │ │ ├── actionCreators.js │ │ ├── actionType.js │ │ ├── index.js │ │ └── reducer.js ├── images │ ├── chatAvatar.png │ └── robot.jpg ├── index.css ├── index.js └── serviceWorker.js ├── trash.py └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | *.DS_Store 7 | *.idea 8 | .idea 9 | 10 | 11 | # C extensions 12 | *.so 13 | 14 | # Distribution / packaging 15 | .Python 16 | build/ 17 | develop-eggs/ 18 | dist/ 19 | downloads/ 20 | eggs/ 21 | .eggs/ 22 | lib/ 23 | lib64/ 24 | parts/ 25 | sdist/ 26 | var/ 27 | wheels/ 28 | *.egg-info/ 29 | .installed.cfg 30 | *.egg 31 | MANIFEST 32 | 33 | # PyInstaller 34 | # Usually these files are written by a python script from a template 35 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 36 | *.manifest 37 | *.spec 38 | 39 | # Installer logs 40 | pip-log.txt 41 | pip-delete-this-directory.txt 42 | 43 | # Unit test / coverage reports 44 | htmlcov/ 45 | .tox/ 46 | .coverage 47 | .coverage.* 48 | .cache 49 | nosetests.xml 50 | coverage.xml 51 | *.cover 52 | .hypothesis/ 53 | .pytest_cache/ 54 | 55 | # Translations 56 | *.mo 57 | *.pot 58 | 59 | # Django stuff: 60 | *.log 61 | local_settings.py 62 | db.sqlite3 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | target/ 76 | 77 | # Jupyter Notebook 78 | .ipynb_checkpoints 79 | 80 | # pyenv 81 | .python-version 82 | 83 | # celery beat schedule file 84 | celerybeat-schedule 85 | 86 | # SageMath parsed files 87 | *.sage.py 88 | 89 | # Environments 90 | .env 91 | .venv 92 | env/ 93 | venv/ 94 | ENV/ 95 | env.bak/ 96 | venv.bak/ 97 | node_modules/ 98 | deploy.js 99 | 100 | # Spyder project settings 101 | .spyderproject 102 | .spyproject 103 | 104 | # Rope project settings 105 | .ropeproject 106 | 107 | # mkdocs documentation 108 | /site 109 | 110 | # mypy 111 | .mypy_cache/ 112 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 3, 29 June 2007 3 | 4 | Copyright (C) 2007 Free Software Foundation, Inc. 5 | Everyone is permitted to copy and distribute verbatim copies 6 | of this license document, but changing it is not allowed. 7 | 8 | Preamble 9 | 10 | The GNU General Public License is a free, copyleft license for 11 | software and other kinds of works. 12 | 13 | The licenses for most software and other practical works are designed 14 | to take away your freedom to share and change the works. By contrast, 15 | the GNU General Public License is intended to guarantee your freedom to 16 | share and change all versions of a program--to make sure it remains free 17 | software for all its users. We, the Free Software Foundation, use the 18 | GNU General Public License for most of our software; it applies also to 19 | any other work released this way by its authors. You can apply it to 20 | your programs, too. 21 | 22 | When we speak of free software, we are referring to freedom, not 23 | price. Our General Public Licenses are designed to make sure that you 24 | have the freedom to distribute copies of free software (and charge for 25 | them if you wish), that you receive source code or can get it if you 26 | want it, that you can change the software or use pieces of it in new 27 | free programs, and that you know you can do these things. 28 | 29 | To protect your rights, we need to prevent others from denying you 30 | these rights or asking you to surrender the rights. Therefore, you have 31 | certain responsibilities if you distribute copies of the software, or if 32 | you modify it: responsibilities to respect the freedom of others. 33 | 34 | For example, if you distribute copies of such a program, whether 35 | gratis or for a fee, you must pass on to the recipients the same 36 | freedoms that you received. You must make sure that they, too, receive 37 | or can get the source code. And you must show them these terms so they 38 | know their rights. 39 | 40 | Developers that use the GNU GPL protect your rights with two steps: 41 | (1) assert copyright on the software, and (2) offer you this License 42 | giving you legal permission to copy, distribute and/or modify it. 43 | 44 | For the developers' and authors' protection, the GPL clearly explains 45 | that there is no warranty for this free software. For both users' and 46 | authors' sake, the GPL requires that modified versions be marked as 47 | changed, so that their problems will not be attributed erroneously to 48 | authors of previous versions. 49 | 50 | Some devices are designed to deny users access to install or run 51 | modified versions of the software inside them, although the manufacturer 52 | can do so. This is fundamentally incompatible with the aim of 53 | protecting users' freedom to change the software. The systematic 54 | pattern of such abuse occurs in the area of products for individuals to 55 | use, which is precisely where it is most unacceptable. Therefore, we 56 | have designed this version of the GPL to prohibit the practice for those 57 | products. If such problems arise substantially in other domains, we 58 | stand ready to extend this provision to those domains in future versions 59 | of the GPL, as needed to protect the freedom of users. 60 | 61 | Finally, every program is threatened constantly by software patents. 62 | States should not allow patents to restrict development and use of 63 | software on general-purpose computers, but in those that do, we wish to 64 | avoid the special danger that patents applied to a free program could 65 | make it effectively proprietary. To prevent this, the GPL assures that 66 | patents cannot be used to render the program non-free. 67 | 68 | The precise terms and conditions for copying, distribution and 69 | modification follow. 70 | 71 | TERMS AND CONDITIONS 72 | 73 | 0. Definitions. 74 | 75 | "This License" refers to version 3 of the GNU General Public License. 76 | 77 | "Copyright" also means copyright-like laws that apply to other kinds of 78 | works, such as semiconductor masks. 79 | 80 | "The Program" refers to any copyrightable work licensed under this 81 | License. Each licensee is addressed as "you". "Licensees" and 82 | "recipients" may be individuals or organizations. 83 | 84 | To "modify" a work means to copy from or adapt all or part of the work 85 | in a fashion requiring copyright permission, other than the making of an 86 | exact copy. The resulting work is called a "modified version" of the 87 | earlier work or a work "based on" the earlier work. 88 | 89 | A "covered work" means either the unmodified Program or a work based 90 | on the Program. 91 | 92 | To "propagate" a work means to do anything with it that, without 93 | permission, would make you directly or secondarily liable for 94 | infringement under applicable copyright law, except executing it on a 95 | computer or modifying a private copy. Propagation includes copying, 96 | distribution (with or without modification), making available to the 97 | public, and in some countries other activities as well. 98 | 99 | To "convey" a work means any kind of propagation that enables other 100 | parties to make or receive copies. Mere interaction with a user through 101 | a computer network, with no transfer of a copy, is not conveying. 102 | 103 | An interactive user interface displays "Appropriate Legal Notices" 104 | to the extent that it includes a convenient and prominently visible 105 | feature that (1) displays an appropriate copyright notice, and (2) 106 | tells the user that there is no warranty for the work (except to the 107 | extent that warranties are provided), that licensees may convey the 108 | work under this License, and how to view a copy of this License. If 109 | the interface presents a list of user commands or options, such as a 110 | menu, a prominent item in the list meets this criterion. 111 | 112 | 1. Source Code. 113 | 114 | The "source code" for a work means the preferred form of the work 115 | for making modifications to it. "Object code" means any non-source 116 | form of a work. 117 | 118 | A "Standard Interface" means an interface that either is an official 119 | standard defined by a recognized standards body, or, in the case of 120 | interfaces specified for a particular programming language, one that 121 | is widely used among developers working in that language. 122 | 123 | The "System Libraries" of an executable work include anything, other 124 | than the work as a whole, that (a) is included in the normal form of 125 | packaging a Major Component, but which is not part of that Major 126 | Component, and (b) serves only to enable use of the work with that 127 | Major Component, or to implement a Standard Interface for which an 128 | implementation is available to the public in source code form. A 129 | "Major Component", in this context, means a major essential component 130 | (kernel, window system, and so on) of the specific operating system 131 | (if any) on which the executable work runs, or a compiler used to 132 | produce the work, or an object code interpreter used to run it. 133 | 134 | The "Corresponding Source" for a work in object code form means all 135 | the source code needed to generate, install, and (for an executable 136 | work) run the object code and to modify the work, including scripts to 137 | control those activities. However, it does not include the work's 138 | System Libraries, or general-purpose tools or generally available free 139 | programs which are used unmodified in performing those activities but 140 | which are not part of the work. For example, Corresponding Source 141 | includes interface definition files associated with source files for 142 | the work, and the source code for shared libraries and dynamically 143 | linked subprograms that the work is specifically designed to require, 144 | such as by intimate data communication or control flow between those 145 | subprograms and other parts of the work. 146 | 147 | The Corresponding Source need not include anything that users 148 | can regenerate automatically from other parts of the Corresponding 149 | Source. 150 | 151 | The Corresponding Source for a work in source code form is that 152 | same work. 153 | 154 | 2. Basic Permissions. 155 | 156 | All rights granted under this License are granted for the term of 157 | copyright on the Program, and are irrevocable provided the stated 158 | conditions are met. This License explicitly affirms your unlimited 159 | permission to run the unmodified Program. The output from running a 160 | covered work is covered by this License only if the output, given its 161 | content, constitutes a covered work. This License acknowledges your 162 | rights of fair use or other equivalent, as provided by copyright law. 163 | 164 | You may make, run and propagate covered works that you do not 165 | convey, without conditions so long as your license otherwise remains 166 | in force. You may convey covered works to others for the sole purpose 167 | of having them make modifications exclusively for you, or provide you 168 | with facilities for running those works, provided that you comply with 169 | the terms of this License in conveying all material for which you do 170 | not control copyright. Those thus making or running the covered works 171 | for you must do so exclusively on your behalf, under your direction 172 | and control, on terms that prohibit them from making any copies of 173 | your copyrighted material outside their relationship with you. 174 | 175 | Conveying under any other circumstances is permitted solely under 176 | the conditions stated below. Sublicensing is not allowed; section 10 177 | makes it unnecessary. 178 | 179 | 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 180 | 181 | No covered work shall be deemed part of an effective technological 182 | measure under any applicable law fulfilling obligations under article 183 | 11 of the WIPO copyright treaty adopted on 20 December 1996, or 184 | similar laws prohibiting or restricting circumvention of such 185 | measures. 186 | 187 | When you convey a covered work, you waive any legal power to forbid 188 | circumvention of technological measures to the extent such circumvention 189 | is effected by exercising rights under this License with respect to 190 | the covered work, and you disclaim any intention to limit operation or 191 | modification of the work as a means of enforcing, against the work's 192 | users, your or third parties' legal rights to forbid circumvention of 193 | technological measures. 194 | 195 | 4. Conveying Verbatim Copies. 196 | 197 | You may convey verbatim copies of the Program's source code as you 198 | receive it, in any medium, provided that you conspicuously and 199 | appropriately publish on each copy an appropriate copyright notice; 200 | keep intact all notices stating that this License and any 201 | non-permissive terms added in accord with section 7 apply to the code; 202 | keep intact all notices of the absence of any warranty; and give all 203 | recipients a copy of this License along with the Program. 204 | 205 | You may charge any price or no price for each copy that you convey, 206 | and you may offer support or warranty protection for a fee. 207 | 208 | 5. Conveying Modified Source Versions. 209 | 210 | You may convey a work based on the Program, or the modifications to 211 | produce it from the Program, in the form of source code under the 212 | terms of section 4, provided that you also meet all of these conditions: 213 | 214 | a) The work must carry prominent notices stating that you modified 215 | it, and giving a relevant date. 216 | 217 | b) The work must carry prominent notices stating that it is 218 | released under this License and any conditions added under section 219 | 7. This requirement modifies the requirement in section 4 to 220 | "keep intact all notices". 221 | 222 | c) You must license the entire work, as a whole, under this 223 | License to anyone who comes into possession of a copy. This 224 | License will therefore apply, along with any applicable section 7 225 | additional terms, to the whole of the work, and all its parts, 226 | regardless of how they are packaged. This License gives no 227 | permission to license the work in any other way, but it does not 228 | invalidate such permission if you have separately received it. 229 | 230 | d) If the work has interactive user interfaces, each must display 231 | Appropriate Legal Notices; however, if the Program has interactive 232 | interfaces that do not display Appropriate Legal Notices, your 233 | work need not make them do so. 234 | 235 | A compilation of a covered work with other separate and independent 236 | works, which are not by their nature extensions of the covered work, 237 | and which are not combined with it such as to form a larger program, 238 | in or on a volume of a storage or distribution medium, is called an 239 | "aggregate" if the compilation and its resulting copyright are not 240 | used to limit the access or legal rights of the compilation's users 241 | beyond what the individual works permit. Inclusion of a covered work 242 | in an aggregate does not cause this License to apply to the other 243 | parts of the aggregate. 244 | 245 | 6. Conveying Non-Source Forms. 246 | 247 | You may convey a covered work in object code form under the terms 248 | of sections 4 and 5, provided that you also convey the 249 | machine-readable Corresponding Source under the terms of this License, 250 | in one of these ways: 251 | 252 | a) Convey the object code in, or embodied in, a physical product 253 | (including a physical distribution medium), accompanied by the 254 | Corresponding Source fixed on a durable physical medium 255 | customarily used for software interchange. 256 | 257 | b) Convey the object code in, or embodied in, a physical product 258 | (including a physical distribution medium), accompanied by a 259 | written offer, valid for at least three years and valid for as 260 | long as you offer spare parts or customer support for that product 261 | model, to give anyone who possesses the object code either (1) a 262 | copy of the Corresponding Source for all the software in the 263 | product that is covered by this License, on a durable physical 264 | medium customarily used for software interchange, for a price no 265 | more than your reasonable cost of physically performing this 266 | conveying of source, or (2) access to copy the 267 | Corresponding Source from a network server at no charge. 268 | 269 | c) Convey individual copies of the object code with a copy of the 270 | written offer to provide the Corresponding Source. This 271 | alternative is allowed only occasionally and noncommercially, and 272 | only if you received the object code with such an offer, in accord 273 | with subsection 6b. 274 | 275 | d) Convey the object code by offering access from a designated 276 | place (gratis or for a charge), and offer equivalent access to the 277 | Corresponding Source in the same way through the same place at no 278 | further charge. You need not require recipients to copy the 279 | Corresponding Source along with the object code. If the place to 280 | copy the object code is a network server, the Corresponding Source 281 | may be on a different server (operated by you or a third party) 282 | that supports equivalent copying facilities, provided you maintain 283 | clear directions next to the object code saying where to find the 284 | Corresponding Source. Regardless of what server hosts the 285 | Corresponding Source, you remain obligated to ensure that it is 286 | available for as long as needed to satisfy these requirements. 287 | 288 | e) Convey the object code using peer-to-peer transmission, provided 289 | you inform other peers where the object code and Corresponding 290 | Source of the work are being offered to the general public at no 291 | charge under subsection 6d. 292 | 293 | A separable portion of the object code, whose source code is excluded 294 | from the Corresponding Source as a System Library, need not be 295 | included in conveying the object code work. 296 | 297 | A "User Product" is either (1) a "consumer product", which means any 298 | tangible personal property which is normally used for personal, family, 299 | or household purposes, or (2) anything designed or sold for incorporation 300 | into a dwelling. In determining whether a product is a consumer product, 301 | doubtful cases shall be resolved in favor of coverage. For a particular 302 | product received by a particular user, "normally used" refers to a 303 | typical or common use of that class of product, regardless of the status 304 | of the particular user or of the way in which the particular user 305 | actually uses, or expects or is expected to use, the product. A product 306 | is a consumer product regardless of whether the product has substantial 307 | commercial, industrial or non-consumer uses, unless such uses represent 308 | the only significant mode of use of the product. 309 | 310 | "Installation Information" for a User Product means any methods, 311 | procedures, authorization keys, or other information required to install 312 | and execute modified versions of a covered work in that User Product from 313 | a modified version of its Corresponding Source. The information must 314 | suffice to ensure that the continued functioning of the modified object 315 | code is in no case prevented or interfered with solely because 316 | modification has been made. 317 | 318 | If you convey an object code work under this section in, or with, or 319 | specifically for use in, a User Product, and the conveying occurs as 320 | part of a transaction in which the right of possession and use of the 321 | User Product is transferred to the recipient in perpetuity or for a 322 | fixed term (regardless of how the transaction is characterized), the 323 | Corresponding Source conveyed under this section must be accompanied 324 | by the Installation Information. But this requirement does not apply 325 | if neither you nor any third party retains the ability to install 326 | modified object code on the User Product (for example, the work has 327 | been installed in ROM). 328 | 329 | The requirement to provide Installation Information does not include a 330 | requirement to continue to provide support service, warranty, or updates 331 | for a work that has been modified or installed by the recipient, or for 332 | the User Product in which it has been modified or installed. Access to a 333 | network may be denied when the modification itself materially and 334 | adversely affects the operation of the network or violates the rules and 335 | protocols for communication across the network. 336 | 337 | Corresponding Source conveyed, and Installation Information provided, 338 | in accord with this section must be in a format that is publicly 339 | documented (and with an implementation available to the public in 340 | source code form), and must require no special password or key for 341 | unpacking, reading or copying. 342 | 343 | 7. Additional Terms. 344 | 345 | "Additional permissions" are terms that supplement the terms of this 346 | License by making exceptions from one or more of its conditions. 347 | Additional permissions that are applicable to the entire Program shall 348 | be treated as though they were included in this License, to the extent 349 | that they are valid under applicable law. If additional permissions 350 | apply only to part of the Program, that part may be used separately 351 | under those permissions, but the entire Program remains governed by 352 | this License without regard to the additional permissions. 353 | 354 | When you convey a copy of a covered work, you may at your option 355 | remove any additional permissions from that copy, or from any part of 356 | it. (Additional permissions may be written to require their own 357 | removal in certain cases when you modify the work.) You may place 358 | additional permissions on material, added by you to a covered work, 359 | for which you have or can give appropriate copyright permission. 360 | 361 | Notwithstanding any other provision of this License, for material you 362 | add to a covered work, you may (if authorized by the copyright holders of 363 | that material) supplement the terms of this License with terms: 364 | 365 | a) Disclaiming warranty or limiting liability differently from the 366 | terms of sections 15 and 16 of this License; or 367 | 368 | b) Requiring preservation of specified reasonable legal notices or 369 | author attributions in that material or in the Appropriate Legal 370 | Notices displayed by works containing it; or 371 | 372 | c) Prohibiting misrepresentation of the origin of that material, or 373 | requiring that modified versions of such material be marked in 374 | reasonable ways as different from the original version; or 375 | 376 | d) Limiting the use for publicity purposes of names of licensors or 377 | authors of the material; or 378 | 379 | e) Declining to grant rights under trademark law for use of some 380 | trade names, trademarks, or service marks; or 381 | 382 | f) Requiring indemnification of licensors and authors of that 383 | material by anyone who conveys the material (or modified versions of 384 | it) with contractual assumptions of liability to the recipient, for 385 | any liability that these contractual assumptions directly impose on 386 | those licensors and authors. 387 | 388 | All other non-permissive additional terms are considered "further 389 | restrictions" within the meaning of section 10. If the Program as you 390 | received it, or any part of it, contains a notice stating that it is 391 | governed by this License along with a term that is a further 392 | restriction, you may remove that term. If a license document contains 393 | a further restriction but permits relicensing or conveying under this 394 | License, you may add to a covered work material governed by the terms 395 | of that license document, provided that the further restriction does 396 | not survive such relicensing or conveying. 397 | 398 | If you add terms to a covered work in accord with this section, you 399 | must place, in the relevant source files, a statement of the 400 | additional terms that apply to those files, or a notice indicating 401 | where to find the applicable terms. 402 | 403 | Additional terms, permissive or non-permissive, may be stated in the 404 | form of a separately written license, or stated as exceptions; 405 | the above requirements apply either way. 406 | 407 | 8. Termination. 408 | 409 | You may not propagate or modify a covered work except as expressly 410 | provided under this License. Any attempt otherwise to propagate or 411 | modify it is void, and will automatically terminate your rights under 412 | this License (including any patent licenses granted under the third 413 | paragraph of section 11). 414 | 415 | However, if you cease all violation of this License, then your 416 | license from a particular copyright holder is reinstated (a) 417 | provisionally, unless and until the copyright holder explicitly and 418 | finally terminates your license, and (b) permanently, if the copyright 419 | holder fails to notify you of the violation by some reasonable means 420 | prior to 60 days after the cessation. 421 | 422 | Moreover, your license from a particular copyright holder is 423 | reinstated permanently if the copyright holder notifies you of the 424 | violation by some reasonable means, this is the first time you have 425 | received notice of violation of this License (for any work) from that 426 | copyright holder, and you cure the violation prior to 30 days after 427 | your receipt of the notice. 428 | 429 | Termination of your rights under this section does not terminate the 430 | licenses of parties who have received copies or rights from you under 431 | this License. If your rights have been terminated and not permanently 432 | reinstated, you do not qualify to receive new licenses for the same 433 | material under section 10. 434 | 435 | 9. Acceptance Not Required for Having Copies. 436 | 437 | You are not required to accept this License in order to receive or 438 | run a copy of the Program. Ancillary propagation of a covered work 439 | occurring solely as a consequence of using peer-to-peer transmission 440 | to receive a copy likewise does not require acceptance. However, 441 | nothing other than this License grants you permission to propagate or 442 | modify any covered work. These actions infringe copyright if you do 443 | not accept this License. Therefore, by modifying or propagating a 444 | covered work, you indicate your acceptance of this License to do so. 445 | 446 | 10. Automatic Licensing of Downstream Recipients. 447 | 448 | Each time you convey a covered work, the recipient automatically 449 | receives a license from the original licensors, to run, modify and 450 | propagate that work, subject to this License. You are not responsible 451 | for enforcing compliance by third parties with this License. 452 | 453 | An "entity transaction" is a transaction transferring control of an 454 | organization, or substantially all assets of one, or subdividing an 455 | organization, or merging organizations. If propagation of a covered 456 | work results from an entity transaction, each party to that 457 | transaction who receives a copy of the work also receives whatever 458 | licenses to the work the party's predecessor in interest had or could 459 | give under the previous paragraph, plus a right to possession of the 460 | Corresponding Source of the work from the predecessor in interest, if 461 | the predecessor has it or can get it with reasonable efforts. 462 | 463 | You may not impose any further restrictions on the exercise of the 464 | rights granted or affirmed under this License. For example, you may 465 | not impose a license fee, royalty, or other charge for exercise of 466 | rights granted under this License, and you may not initiate litigation 467 | (including a cross-claim or counterclaim in a lawsuit) alleging that 468 | any patent claim is infringed by making, using, selling, offering for 469 | sale, or importing the Program or any portion of it. 470 | 471 | 11. Patents. 472 | 473 | A "contributor" is a copyright holder who authorizes use under this 474 | License of the Program or a work on which the Program is based. The 475 | work thus licensed is called the contributor's "contributor version". 476 | 477 | A contributor's "essential patent claims" are all patent claims 478 | owned or controlled by the contributor, whether already acquired or 479 | hereafter acquired, that would be infringed by some manner, permitted 480 | by this License, of making, using, or selling its contributor version, 481 | but do not include claims that would be infringed only as a 482 | consequence of further modification of the contributor version. For 483 | purposes of this definition, "control" includes the right to grant 484 | patent sublicenses in a manner consistent with the requirements of 485 | this License. 486 | 487 | Each contributor grants you a non-exclusive, worldwide, royalty-free 488 | patent license under the contributor's essential patent claims, to 489 | make, use, sell, offer for sale, import and otherwise run, modify and 490 | propagate the contents of its contributor version. 491 | 492 | In the following three paragraphs, a "patent license" is any express 493 | agreement or commitment, however denominated, not to enforce a patent 494 | (such as an express permission to practice a patent or covenant not to 495 | sue for patent infringement). To "grant" such a patent license to a 496 | party means to make such an agreement or commitment not to enforce a 497 | patent against the party. 498 | 499 | If you convey a covered work, knowingly relying on a patent license, 500 | and the Corresponding Source of the work is not available for anyone 501 | to copy, free of charge and under the terms of this License, through a 502 | publicly available network server or other readily accessible means, 503 | then you must either (1) cause the Corresponding Source to be so 504 | available, or (2) arrange to deprive yourself of the benefit of the 505 | patent license for this particular work, or (3) arrange, in a manner 506 | consistent with the requirements of this License, to extend the patent 507 | license to downstream recipients. "Knowingly relying" means you have 508 | actual knowledge that, but for the patent license, your conveying the 509 | covered work in a country, or your recipient's use of the covered work 510 | in a country, would infringe one or more identifiable patents in that 511 | country that you have reason to believe are valid. 512 | 513 | If, pursuant to or in connection with a single transaction or 514 | arrangement, you convey, or propagate by procuring conveyance of, a 515 | covered work, and grant a patent license to some of the parties 516 | receiving the covered work authorizing them to use, propagate, modify 517 | or convey a specific copy of the covered work, then the patent license 518 | you grant is automatically extended to all recipients of the covered 519 | work and works based on it. 520 | 521 | A patent license is "discriminatory" if it does not include within 522 | the scope of its coverage, prohibits the exercise of, or is 523 | conditioned on the non-exercise of one or more of the rights that are 524 | specifically granted under this License. You may not convey a covered 525 | work if you are a party to an arrangement with a third party that is 526 | in the business of distributing software, under which you make payment 527 | to the third party based on the extent of your activity of conveying 528 | the work, and under which the third party grants, to any of the 529 | parties who would receive the covered work from you, a discriminatory 530 | patent license (a) in connection with copies of the covered work 531 | conveyed by you (or copies made from those copies), or (b) primarily 532 | for and in connection with specific products or compilations that 533 | contain the covered work, unless you entered into that arrangement, 534 | or that patent license was granted, prior to 28 March 2007. 535 | 536 | Nothing in this License shall be construed as excluding or limiting 537 | any implied license or other defenses to infringement that may 538 | otherwise be available to you under applicable patent law. 539 | 540 | 12. No Surrender of Others' Freedom. 541 | 542 | If conditions are imposed on you (whether by court order, agreement or 543 | otherwise) that contradict the conditions of this License, they do not 544 | excuse you from the conditions of this License. If you cannot convey a 545 | covered work so as to satisfy simultaneously your obligations under this 546 | License and any other pertinent obligations, then as a consequence you may 547 | not convey it at all. For example, if you agree to terms that obligate you 548 | to collect a royalty for further conveying from those to whom you convey 549 | the Program, the only way you could satisfy both those terms and this 550 | License would be to refrain entirely from conveying the Program. 551 | 552 | 13. Use with the GNU Affero General Public License. 553 | 554 | Notwithstanding any other provision of this License, you have 555 | permission to link or combine any covered work with a work licensed 556 | under version 3 of the GNU Affero General Public License into a single 557 | combined work, and to convey the resulting work. The terms of this 558 | License will continue to apply to the part which is the covered work, 559 | but the special requirements of the GNU Affero General Public License, 560 | section 13, concerning interaction through a network will apply to the 561 | combination as such. 562 | 563 | 14. Revised Versions of this License. 564 | 565 | The Free Software Foundation may publish revised and/or new versions of 566 | the GNU General Public License from time to time. Such new versions will 567 | be similar in spirit to the present version, but may differ in detail to 568 | address new problems or concerns. 569 | 570 | Each version is given a distinguishing version number. If the 571 | Program specifies that a certain numbered version of the GNU General 572 | Public License "or any later version" applies to it, you have the 573 | option of following the terms and conditions either of that numbered 574 | version or of any later version published by the Free Software 575 | Foundation. If the Program does not specify a version number of the 576 | GNU General Public License, you may choose any version ever published 577 | by the Free Software Foundation. 578 | 579 | If the Program specifies that a proxy can decide which future 580 | versions of the GNU General Public License can be used, that proxy's 581 | public statement of acceptance of a version permanently authorizes you 582 | to choose that version for the Program. 583 | 584 | Later license versions may give you additional or different 585 | permissions. However, no additional obligations are imposed on any 586 | author or copyright holder as a result of your choosing to follow a 587 | later version. 588 | 589 | 15. Disclaimer of Warranty. 590 | 591 | THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 592 | APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 593 | HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY 594 | OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, 595 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 596 | PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM 597 | IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF 598 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 599 | 600 | 16. Limitation of Liability. 601 | 602 | IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 603 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS 604 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY 605 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE 606 | USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF 607 | DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD 608 | PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), 609 | EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF 610 | SUCH DAMAGES. 611 | 612 | 17. Interpretation of Sections 15 and 16. 613 | 614 | If the disclaimer of warranty and limitation of liability provided 615 | above cannot be given local legal effect according to their terms, 616 | reviewing courts shall apply local law that most closely approximates 617 | an absolute waiver of all civil liability in connection with the 618 | Program, unless a warranty or assumption of liability accompanies a 619 | copy of the Program in return for a fee. 620 | 621 | END OF TERMS AND CONDITIONS 622 | 623 | How to Apply These Terms to Your New Programs 624 | 625 | If you develop a new program, and you want it to be of the greatest 626 | possible use to the public, the best way to achieve this is to make it 627 | free software which everyone can redistribute and change under these terms. 628 | 629 | To do so, attach the following notices to the program. It is safest 630 | to attach them to the start of each source file to most effectively 631 | state the exclusion of warranty; and each file should have at least 632 | the "copyright" line and a pointer to where the full notice is found. 633 | 634 | 635 | Copyright (C) 636 | 637 | This program is free software: you can redistribute it and/or modify 638 | it under the terms of the GNU General Public License as published by 639 | the Free Software Foundation, either version 3 of the License, or 640 | (at your option) any later version. 641 | 642 | This program is distributed in the hope that it will be useful, 643 | but WITHOUT ANY WARRANTY; without even the implied warranty of 644 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 645 | GNU General Public License for more details. 646 | 647 | You should have received a copy of the GNU General Public License 648 | along with this program. If not, see . 649 | 650 | Also add information on how to contact you by electronic and paper mail. 651 | 652 | If the program does terminal interaction, make it output a short 653 | notice like this when it starts in an interactive mode: 654 | 655 | Copyright (C) 656 | This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 657 | This is free software, and you are welcome to redistribute it 658 | under certain conditions; type `show c' for details. 659 | 660 | The hypothetical commands `show w' and `show c' should show the appropriate 661 | parts of the General Public License. Of course, your program's commands 662 | might be different; for a GUI interface, you would use an "about box". 663 | 664 | You should also get your employer (if you work as a programmer) or school, 665 | if any, to sign a "copyright disclaimer" for the program, if necessary. 666 | For more information on this, and how to apply and follow the GNU GPL, see 667 | . 668 | 669 | The GNU General Public License does not permit incorporating your program 670 | into proprietary programs. If your program is a subroutine library, you 671 | may consider it more useful to permit linking proprietary applications with 672 | the library. If this is what you want to do, use the GNU Lesser General 673 | Public License instead of this License. But first, please read 674 | . 675 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # what-trash 2 | 3 | 为了更好的垃圾分类,编写了一个智能回答小助手,数据来源于上海市垃圾查询爬取 与 福州第一技师学院的生活垃圾分类知识汇总 4 | 5 |  6 | 7 | ## Data格式与添加方法 8 | 可在 [ansdata/good_data.json](https://github.com/aboutmydreams/what-trash/tree/master/ansdata/good_data.json) 中查看,部分数据截取,已有500+数据,有待整理与添加。开源项目 望提交 pull request 支持。 9 | ```json 10 | { 11 | "碎陶瓷": "干垃圾", 12 | "毛毯": "可回收物", 13 | "口香糖": "干垃圾", 14 | }, 15 | ``` 16 | 项目结构中,get_more_data.py 是我拓展更多数据时 17 | 使用的py文件,用于将更多的数据写入 json 当中,在 18 | 项目部署中无需求。其中的sort_list函数可传入未知 19 | 垃圾列表,自动抓取数据写入txt。run.py是 flask 的 20 | 部署py。trash.py 是主函数所在文件,包括爬取函数, 21 | 写入txt,返回有趣的答案,您可以在其中添加"你是什么 22 | 垃圾"等 的有趣回答,望贡献文案~。 23 | 24 | 25 | ## 后端部署 26 | 27 | 后端使用简单的 flask app run部署,默认 1028 端口,可在 run.py 中修改 28 | 29 | ```bash 30 | git clone https://github.com/aboutmydreams/what-trash.git 31 | cd what-trash 32 | python run.py 33 | ``` 34 | 35 | ### url: /trash 36 | 37 | #### `method: GET` 38 | 39 | #### `param` 40 | 41 | ```json 42 | { 43 | "name": "陶瓷" 44 | } 45 | ``` 46 | 47 | ### `response`: 48 | 49 | ```json 50 | { 51 | "status": 1, 52 | "content": "陶瓷属于干垃圾哦~" 53 | } 54 | ``` 55 | 56 | #### api 说明 57 | 58 | ```bash 59 | status = 1, 返回已知解答 60 | 61 | status = 0, 返回猜测解答 62 | ``` 63 | 64 | #### 测试接口 65 | 66 | http://118.25.236.82:1028/trash?name=%E9%99%B6%E7%93%B7 67 | 68 | 69 | 70 | ## 前端部署 71 | 72 | 前端部署地址:[http://what-trash.flura.cn](http://what-trash.flura.cn/) 73 | 74 | 75 | 76 | 前端部署效果图: 77 | 78 |  79 | 80 | ## Available Scripts 81 | 82 | In the project directory, you can run: 83 | 84 | ### `npm start` 85 | 86 | Runs the app in the development mode. 87 | Open [http://localhost:3000](http://localhost:3000) to view it in the browser. 88 | 89 | The page will reload if you make edits. 90 | You will also see any lint errors in the console. 91 | 92 | ### `npm test` 93 | 94 | Launches the test runner in the interactive watch mode. 95 | See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. 96 | 97 | ### `npm run build` 98 | 99 | Builds the app for production to the `build` folder. 100 | It correctly bundles React in production mode and optimizes the build for the best performance. 101 | 102 | The build is minified and the filenames include the hashes. 103 | Your app is ready to be deployed! 104 | 105 | See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. 106 | 107 | ### `npm run eject` 108 | 109 | **Note: this is a one-way operation. Once you `eject`, you can’t go back!** 110 | 111 | If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. 112 | 113 | Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. 114 | 115 | You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. 116 | 117 | 118 | 119 | ### 开源许可 120 | 121 | 本项目使用 [AGPLv3](https://github.com/aboutmydreams/what-trash/blob/master/LICENSE) 许可证,这意味着你可以使用本项目向你的用户提供服务,但如果你需要对项目的源码进行修改,则必须将你修改后的版本对你的用户开源。 122 | -------------------------------------------------------------------------------- /ansdata/answer_data.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "苹果": "湿垃圾" 4 | }, 5 | { 6 | "电磁炉": "电器电子产品" 7 | }, 8 | { 9 | "烤箱": "电器电子产品" 10 | }, 11 | { 12 | "微波炉": "电器电子产品" 13 | }, 14 | { 15 | "净水器": "电器电子产品" 16 | }, 17 | { 18 | "加湿器": "电器电子产品" 19 | }, 20 | { 21 | "除湿机": "电器电子产品" 22 | }, 23 | { 24 | "空调": "电器电子产品" 25 | }, 26 | { 27 | "冰箱": "电器电子产品" 28 | }, 29 | { 30 | "洗衣机": "电器电子产品" 31 | }, 32 | { 33 | "冰柜": "电器电子产品" 34 | }, 35 | { 36 | "抽油烟机": "电器电子产品" 37 | }, 38 | { 39 | "电磁炉": "电器电子产品" 40 | }, 41 | { 42 | "烤箱": "电器电子产品" 43 | }, 44 | { 45 | "微波炉": "电器电子产品" 46 | }, 47 | { 48 | "净水器": "电器电子产品" 49 | }, 50 | { 51 | "加湿器": "电器电子产品" 52 | }, 53 | { 54 | "除湿机": "电器电子产品" 55 | }, 56 | { 57 | "空调": "电器电子产品" 58 | }, 59 | { 60 | "冰箱": "电器电子产品" 61 | }, 62 | { 63 | "洗衣机": "电器电子产品" 64 | }, 65 | { 66 | "冰柜": "电器电子产品" 67 | }, 68 | { 69 | "抽油烟机": "电器电子产品" 70 | }, 71 | { 72 | "苹果": "湿垃圾" 73 | }, 74 | { 75 | "行李箱": "大件垃圾, 请询问物业如何投放" 76 | }, 77 | { 78 | "陶瓷杯": "干垃圾" 79 | }, 80 | { 81 | "碎陶瓷": "干垃圾" 82 | }, 83 | { 84 | "陶瓷刀": "干垃圾" 85 | }, 86 | { 87 | "毛毯": "可回收物" 88 | }, 89 | { 90 | "尘土": "干垃圾" 91 | }, 92 | { 93 | "口香糖": "干垃圾" 94 | }, 95 | { 96 | "榴莲壳": "干垃圾" 97 | }, 98 | { 99 | "椰子壳": "干垃圾" 100 | }, 101 | { 102 | "柚子皮": "湿垃圾" 103 | }, 104 | { 105 | "荔枝": "湿垃圾" 106 | }, 107 | { 108 | "苹果": "湿垃圾" 109 | }, 110 | { 111 | "花生": "湿垃圾" 112 | }, 113 | { 114 | "杨梅": "湿垃圾" 115 | }, 116 | { 117 | "圣女果": "湿垃圾" 118 | }, 119 | { 120 | "杏仁": "湿垃圾" 121 | }, 122 | { 123 | "西瓜": "湿垃圾" 124 | }, 125 | { 126 | "香蕉": "湿垃圾" 127 | }, 128 | { 129 | "榴莲": "干垃圾" 130 | }, 131 | { 132 | "梨": "湿垃圾" 133 | }, 134 | { 135 | "木瓜": "湿垃圾" 136 | }, 137 | { 138 | "柠檬": "湿垃圾" 139 | }, 140 | { 141 | "火龙果": "湿垃圾" 142 | }, 143 | { 144 | "橙子": "湿垃圾" 145 | }, 146 | { 147 | "草莓": "湿垃圾" 148 | }, 149 | { 150 | "黄瓜": "湿垃圾" 151 | }, 152 | { 153 | "槟榔": "湿垃圾" 154 | }, 155 | { 156 | "柚子": "湿垃圾" 157 | }, 158 | { 159 | "栗子": "湿垃圾" 160 | }, 161 | { 162 | "樱桃": "湿垃圾" 163 | }, 164 | { 165 | "菱角": "湿垃圾" 166 | }, 167 | { 168 | "芒果": "湿垃圾" 169 | }, 170 | { 171 | "凤梨": "湿垃圾" 172 | }, 173 | { 174 | "榴莲": "干垃圾" 175 | }, 176 | { 177 | "槟榔": "湿垃圾" 178 | }, 179 | { 180 | "菠萝": "湿垃圾" 181 | }, 182 | { 183 | "菱角": "湿垃圾" 184 | }, 185 | { 186 | "柠檬": "湿垃圾" 187 | }, 188 | { 189 | "梨": "湿垃圾" 190 | }, 191 | { 192 | "西瓜": "湿垃圾" 193 | }, 194 | { 195 | "柚子": "湿垃圾" 196 | }, 197 | { 198 | "香蕉": "湿垃圾" 199 | }, 200 | { 201 | "草莓": "湿垃圾" 202 | }, 203 | { 204 | "桂圆": "湿垃圾" 205 | }, 206 | { 207 | "葡萄": "湿垃圾" 208 | }, 209 | { 210 | "樱桃": "湿垃圾" 211 | }, 212 | { 213 | "木瓜": "湿垃圾" 214 | }, 215 | { 216 | "杏仁": "湿垃圾" 217 | }, 218 | { 219 | "杨梅": "湿垃圾" 220 | }, 221 | { 222 | "黄瓜": "湿垃圾" 223 | }, 224 | { 225 | "桃子": "湿垃圾" 226 | }, 227 | { 228 | "橙子": "湿垃圾" 229 | }, 230 | { 231 | "荔枝": "湿垃圾" 232 | }, 233 | { 234 | "圣女果": "湿垃圾" 235 | }, 236 | { 237 | "芒果": "湿垃圾" 238 | }, 239 | { 240 | "花生": "湿垃圾" 241 | }, 242 | { 243 | "火龙果": "湿垃圾" 244 | }, 245 | { 246 | "栗子": "湿垃圾" 247 | }, 248 | { 249 | "苹果": "湿垃圾" 250 | }, 251 | { 252 | "开心果": "湿垃圾" 253 | }, 254 | { 255 | "猕猴桃": "湿垃圾" 256 | }, 257 | { 258 | "拖把": "干垃圾" 259 | }, 260 | { 261 | "贝壳": "干垃圾" 262 | }, 263 | { 264 | "纸巾": "干垃圾" 265 | }, 266 | { 267 | "卫生纸": "干垃圾" 268 | }, 269 | { 270 | "纸尿裤": "干垃圾" 271 | }, 272 | { 273 | "颜料": "干垃圾" 274 | }, 275 | { 276 | "油漆": "有害垃圾" 277 | }, 278 | { 279 | "废药品": "有害垃圾" 280 | }, 281 | { 282 | "杀虫剂": "有害垃圾" 283 | }, 284 | { 285 | "节能灯泡": "有害垃圾" 286 | }, 287 | { 288 | "荧光灯管": "有害垃圾" 289 | }, 290 | { 291 | "水银温度计": "有害垃圾" 292 | }, 293 | { 294 | "水银体温计": "有害垃圾" 295 | }, 296 | { 297 | "可充电电池": "有害垃圾" 298 | }, 299 | { 300 | "纽扣电池": "有害垃圾" 301 | }, 302 | { 303 | "干电池": "有害垃圾" 304 | }, 305 | { 306 | "荧光棒": "干垃圾" 307 | }, 308 | { 309 | "电池": "有害垃圾" 310 | }, 311 | { 312 | "废油漆": "有害垃圾" 313 | }, 314 | { 315 | "废胶片": "有害垃圾" 316 | }, 317 | { 318 | "剩饭": "湿垃圾" 319 | }, 320 | { 321 | "瓜子壳": "湿垃圾" 322 | }, 323 | { 324 | "茶叶渣": "湿垃圾" 325 | }, 326 | { 327 | "中药渣": "湿垃圾" 328 | }, 329 | { 330 | "蛋壳": "湿垃圾" 331 | }, 332 | { 333 | "螃蟹壳": "湿垃圾" 334 | }, 335 | { 336 | "虾壳": "湿垃圾" 337 | }, 338 | { 339 | "鱼鳞": "湿垃圾" 340 | }, 341 | { 342 | "蔬菜": "湿垃圾" 343 | }, 344 | { 345 | "瓜果": "湿垃圾" 346 | }, 347 | { 348 | "蛋壳": "湿垃圾" 349 | }, 350 | { 351 | "米饭": "湿垃圾" 352 | }, 353 | { 354 | "过期食品": "湿垃圾" 355 | }, 356 | { 357 | "手机": "电器电子产品" 358 | }, 359 | { 360 | "平板电脑": "电器电子产品" 361 | }, 362 | { 363 | "摄像头": "电器电子产品" 364 | }, 365 | { 366 | "游戏机": "电器电子产品" 367 | }, 368 | { 369 | "耳机": "电器电子产品" 370 | }, 371 | { 372 | "酒瓶": "可回收物" 373 | }, 374 | { 375 | "玻璃杯": "可回收物" 376 | }, 377 | { 378 | "镜子": "干垃圾" 379 | }, 380 | { 381 | "剪刀": "可回收物" 382 | }, 383 | { 384 | "刀片": "可回收物" 385 | }, 386 | { 387 | "金属工具": "可回收物" 388 | }, 389 | { 390 | "窗帘": "可回收物" 391 | }, 392 | { 393 | "布包": "可回收物" 394 | }, 395 | { 396 | "毛巾": "干垃圾" 397 | }, 398 | { 399 | "袜子": "干垃圾" 400 | }, 401 | { 402 | "领带": "可回收物" 403 | }, 404 | { 405 | "报纸": "可回收物" 406 | }, 407 | { 408 | "宣传单": "可回收物" 409 | }, 410 | { 411 | "包装纸盒": "可回收物" 412 | }, 413 | { 414 | "牛奶盒": "可回收物" 415 | }, 416 | { 417 | "方便面袋": "干垃圾" 418 | }, 419 | { 420 | "吸管": "干垃圾" 421 | }, 422 | { 423 | "一次性杯子": "干垃圾" 424 | }, 425 | { 426 | "雨衣": "干垃圾" 427 | }, 428 | { 429 | "泡沫板": "可回收物" 430 | }, 431 | { 432 | "纸": "可回收物" 433 | }, 434 | { 435 | "废塑料": "可回收物" 436 | }, 437 | { 438 | "废金属": "可回收物" 439 | }, 440 | { 441 | "百洁布": "干垃圾" 442 | }, 443 | { 444 | "洗碗布": "干垃圾" 445 | }, 446 | { 447 | "冰柜": "电器电子产品" 448 | }, 449 | { 450 | "锡纸": "干垃圾" 451 | }, 452 | { 453 | "冰箱": "电器电子产品" 454 | }, 455 | { 456 | "玻璃杯": "可回收物" 457 | }, 458 | { 459 | "插头": "可回收物" 460 | }, 461 | { 462 | "洗衣机": "电器电子产品" 463 | }, 464 | { 465 | "保鲜膜": "干垃圾" 466 | }, 467 | { 468 | "金鱼": "湿垃圾" 469 | }, 470 | { 471 | "打火机": "干垃圾" 472 | }, 473 | { 474 | "雨刮器": "干垃圾" 475 | }, 476 | { 477 | "蓄电池": "有害垃圾" 478 | }, 479 | { 480 | "空调": "电器电子产品" 481 | }, 482 | { 483 | "塑料护肤品空瓶": "可回收物" 484 | }, 485 | { 486 | "鱼类": "湿垃圾" 487 | }, 488 | { 489 | "杀虫剂瓶": "有害垃圾" 490 | }, 491 | { 492 | "牙膏壳": "干垃圾" 493 | }, 494 | { 495 | "电热水器": "电器电子产品" 496 | }, 497 | { 498 | "废金属": "可回收物" 499 | }, 500 | { 501 | "食用油桶": "可回收物" 502 | }, 503 | { 504 | "木头铅笔": "干垃圾" 505 | }, 506 | { 507 | "甘蔗皮": "干垃圾" 508 | }, 509 | { 510 | "木制品": "可回收物" 511 | }, 512 | { 513 | "矿泉水瓶": "可回收物" 514 | }, 515 | { 516 | "节能灯泡": "有害垃圾" 517 | }, 518 | { 519 | "椰子肉": "湿垃圾" 520 | }, 521 | { 522 | "塑料制品": "可回收物" 523 | }, 524 | { 525 | "含汞血压计": "有害垃圾" 526 | }, 527 | { 528 | "厨房用纸": "干垃圾" 529 | }, 530 | { 531 | "山竹皮": "湿垃圾" 532 | }, 533 | { 534 | "烂苹果": "湿垃圾" 535 | }, 536 | { 537 | "纸质购物袋": "可回收物" 538 | }, 539 | { 540 | "污损旧衣服": "干垃圾" 541 | }, 542 | { 543 | "护肤品塑料空瓶": "可回收物" 544 | }, 545 | { 546 | "线": "干垃圾" 547 | }, 548 | { 549 | "桂圆": "湿垃圾" 550 | }, 551 | { 552 | "啤酒瓶": "可回收物" 553 | }, 554 | { 555 | "开心果壳": "湿垃圾" 556 | }, 557 | { 558 | "奶油蛋糕": "湿垃圾" 559 | }, 560 | { 561 | "纸质一次性杯子": "干垃圾" 562 | }, 563 | { 564 | "乳胶手套": "干垃圾" 565 | }, 566 | { 567 | "猕猴桃": "湿垃圾" 568 | }, 569 | { 570 | "大骨头": "干垃圾" 571 | }, 572 | { 573 | "门锁": "可回收物" 574 | }, 575 | { 576 | "相片": "有害垃圾" 577 | }, 578 | { 579 | "衣服吊牌": "干垃圾" 580 | }, 581 | { 582 | "玻璃制品": "可回收物" 583 | }, 584 | { 585 | "玻璃": "可回收物" 586 | }, 587 | { 588 | "灯泡": "有害垃圾" 589 | }, 590 | { 591 | "血压计": "电器电子产品" 592 | }, 593 | { 594 | "鱼肉": "湿垃圾" 595 | }, 596 | { 597 | "消毒药片": "有害垃圾" 598 | }, 599 | { 600 | "衣物干燥剂": "干垃圾" 601 | }, 602 | { 603 | "西瓜": "湿垃圾" 604 | }, 605 | { 606 | "枇杷叶": "湿垃圾" 607 | }, 608 | { 609 | "纸塑铝复合包装": "可回收物" 610 | }, 611 | { 612 | "扫把": "干垃圾" 613 | }, 614 | { 615 | "过期药品": "有害垃圾" 616 | }, 617 | { 618 | "金属": "可回收物" 619 | }, 620 | { 621 | "榛子壳": "干垃圾" 622 | }, 623 | { 624 | "胶带": "干垃圾" 625 | }, 626 | { 627 | "水银血压计": "有害垃圾" 628 | }, 629 | { 630 | "香蕉": "湿垃圾" 631 | }, 632 | { 633 | "碧根果壳": "干垃圾" 634 | }, 635 | { 636 | "桂圆干": "湿垃圾" 637 | }, 638 | { 639 | "玻璃杯": "可回收物" 640 | }, 641 | { 642 | "纸": "可回收物" 643 | }, 644 | { 645 | "铁": "可回收物" 646 | }, 647 | { 648 | "洗发露玻璃空瓶": "可回收物" 649 | }, 650 | { 651 | "杏": "湿垃圾" 652 | }, 653 | { 654 | "衣服": "可回收物" 655 | }, 656 | { 657 | "葡萄": "湿垃圾" 658 | }, 659 | { 660 | "老鼠药": "有害垃圾" 661 | }, 662 | { 663 | "肥皂": "干垃圾" 664 | }, 665 | { 666 | "过期糕点": "湿垃圾" 667 | }, 668 | { 669 | "电池": "有害垃圾" 670 | }, 671 | { 672 | "调料包装袋": "干垃圾" 673 | }, 674 | { 675 | "牙膏皮": "干垃圾" 676 | }, 677 | { 678 | "石榴皮": "湿垃圾" 679 | }, 680 | { 681 | "陶瓷刀": "干垃圾" 682 | }, 683 | { 684 | "可降解垃圾袋": "干垃圾" 685 | }, 686 | { 687 | "奶茶杯": "干垃圾" 688 | }, 689 | { 690 | "有机溶剂": "有害垃圾" 691 | }, 692 | { 693 | "金属厨具": "可回收物" 694 | }, 695 | { 696 | "塑料奶茶杯": "干垃圾" 697 | }, 698 | { 699 | "玻璃罐": "可回收物" 700 | }, 701 | { 702 | "肉": "湿垃圾" 703 | }, 704 | { 705 | "茶壶碎片": "干垃圾" 706 | }, 707 | { 708 | "塑料": "可回收物" 709 | }, 710 | { 711 | "农药瓶": "有害垃圾" 712 | }, 713 | { 714 | "陶瓷杯": "干垃圾" 715 | }, 716 | { 717 | "无花果壳": "湿垃圾" 718 | }, 719 | { 720 | "啤酒瓶盖": "可回收物" 721 | }, 722 | { 723 | "菜": "湿垃圾" 724 | }, 725 | { 726 | "核桃壳": "干垃圾" 727 | }, 728 | { 729 | "剪刀": "可回收物" 730 | }, 731 | { 732 | "鸡头": "湿垃圾" 733 | }, 734 | { 735 | "荧光灯": "有害垃圾" 736 | }, 737 | { 738 | "蓝莓干": "湿垃圾" 739 | }, 740 | { 741 | "软木塞": "干垃圾" 742 | }, 743 | { 744 | "腐烂蔬菜": "湿垃圾" 745 | }, 746 | { 747 | "废旧抹布": "干垃圾" 748 | }, 749 | { 750 | "厨房垃圾袋": "干垃圾" 751 | }, 752 | { 753 | "皮带": "可回收物" 754 | }, 755 | { 756 | "龙眼壳": "湿垃圾" 757 | }, 758 | { 759 | "金属锅": "可回收物" 760 | }, 761 | { 762 | "药品": "有害垃圾" 763 | }, 764 | { 765 | "生日蜡烛": "干垃圾" 766 | }, 767 | { 768 | "布": "可回收物" 769 | }, 770 | { 771 | "火柴": "干垃圾" 772 | }, 773 | { 774 | "饮料玻璃瓶": "可回收物" 775 | }, 776 | { 777 | "饮料塑料瓶": "可回收物" 778 | }, 779 | { 780 | "塑料瓶盖": "可回收物" 781 | }, 782 | { 783 | "洗发露塑料空瓶": "可回收物" 784 | }, 785 | { 786 | "烂香蕉": "湿垃圾" 787 | }, 788 | { 789 | "电热水壶": "电器电子产品" 790 | }, 791 | { 792 | "鸭": "湿垃圾" 793 | }, 794 | { 795 | "电脑包": "可回收物" 796 | }, 797 | { 798 | "山竹": "湿垃圾" 799 | }, 800 | { 801 | "奶酪": "湿垃圾" 802 | }, 803 | { 804 | "木塞": "干垃圾" 805 | }, 806 | { 807 | "塑料筷子": "可回收物" 808 | }, 809 | { 810 | "山楂片": "湿垃圾" 811 | }, 812 | { 813 | "鱼内脏": "湿垃圾" 814 | }, 815 | { 816 | "玻璃胶带": "干垃圾" 817 | }, 818 | { 819 | "滤水壶滤芯": "干垃圾" 820 | }, 821 | { 822 | "木筷子": "可回收物" 823 | }, 824 | { 825 | "瓜": "湿垃圾" 826 | }, 827 | { 828 | "相片纸": "有害垃圾" 829 | }, 830 | { 831 | "牛奶瓶吸管": "干垃圾" 832 | }, 833 | { 834 | "密胺餐具": "可回收物" 835 | }, 836 | { 837 | "火锅调料": "湿垃圾" 838 | }, 839 | { 840 | "金属制容器": "可回收物" 841 | }, 842 | { 843 | "鱼": "湿垃圾" 844 | }, 845 | { 846 | "碎陶瓷": "干垃圾" 847 | }, 848 | { 849 | "风味蛋糕": "湿垃圾" 850 | }, 851 | { 852 | "废塑料": "可回收物" 853 | }, 854 | { 855 | "山竹壳": "湿垃圾" 856 | }, 857 | { 858 | "枣": "湿垃圾" 859 | }, 860 | { 861 | "塑料打火机": "干垃圾" 862 | }, 863 | { 864 | "护肤品玻璃空瓶": "可回收物" 865 | }, 866 | { 867 | "含汞温度计": "有害垃圾" 868 | }, 869 | { 870 | "肮脏塑料袋": "干垃圾" 871 | }, 872 | { 873 | "塑料擀面杖": "可回收物" 874 | }, 875 | { 876 | "冷暖气机": "电器电子产品" 877 | }, 878 | { 879 | "蜡烛": "干垃圾" 880 | }, 881 | { 882 | "干电池": "有害垃圾" 883 | }, 884 | { 885 | "废旧牙刷": "干垃圾" 886 | }, 887 | { 888 | "照相机": "电器电子产品" 889 | }, 890 | { 891 | "乌龟壳": "干垃圾" 892 | }, 893 | { 894 | "纺织物": "可回收物" 895 | }, 896 | { 897 | "鹅骨头": "湿垃圾" 898 | }, 899 | { 900 | "化妆品包装袋": "干垃圾" 901 | }, 902 | { 903 | "有害垃圾": "有害垃圾" 904 | }, 905 | { 906 | "落地电风扇": "电器电子产品" 907 | }, 908 | { 909 | "搅拌勺": "干垃圾" 910 | }, 911 | { 912 | "小核桃仁": "湿垃圾" 913 | }, 914 | { 915 | "葡萄干": "湿垃圾" 916 | }, 917 | { 918 | "死老鼠": "湿垃圾" 919 | }, 920 | { 921 | "废药品": "有害垃圾" 922 | }, 923 | { 924 | "牙膏软管": "干垃圾" 925 | }, 926 | { 927 | "杀虫剂": "有害垃圾" 928 | }, 929 | { 930 | "照相机电池": "有害垃圾" 931 | }, 932 | { 933 | "纺织布": "可回收物" 934 | }, 935 | { 936 | "胶卷": "有害垃圾" 937 | }, 938 | { 939 | "旧浴巾": "干垃圾" 940 | }, 941 | { 942 | "蛋糕": "湿垃圾" 943 | }, 944 | { 945 | "化妆品玻璃空瓶": "可回收物" 946 | }, 947 | { 948 | "苹果": "湿垃圾" 949 | }, 950 | { 951 | "瓜果": "湿垃圾" 952 | }, 953 | { 954 | "太阳能热水器": "电器电子产品" 955 | }, 956 | { 957 | "蓄电池": "有害垃圾" 958 | }, 959 | { 960 | "机械表": "可回收物" 961 | }, 962 | { 963 | "塑料袋": "干垃圾" 964 | }, 965 | { 966 | "动物内脏": "湿垃圾" 967 | }, 968 | { 969 | "木质擀面杖": "可回收物" 970 | }, 971 | { 972 | "花盆": "干垃圾" 973 | }, 974 | { 975 | "乳制品": "湿垃圾" 976 | }, 977 | { 978 | "锂电池": "有害垃圾" 979 | }, 980 | { 981 | "玻璃餐具": "可回收物" 982 | }, 983 | { 984 | "一次性筷子": "干垃圾" 985 | }, 986 | { 987 | "荧光灯管": "有害垃圾" 988 | }, 989 | { 990 | "花": "湿垃圾" 991 | }, 992 | { 993 | "一次性杯子": "干垃圾" 994 | }, 995 | { 996 | "瓜果蔬菜": "湿垃圾" 997 | }, 998 | { 999 | "葡萄皮": "湿垃圾" 1000 | }, 1001 | { 1002 | "鸡鸭骨头": "湿垃圾" 1003 | }, 1004 | { 1005 | "有机溶剂类包装物": "有害垃圾" 1006 | }, 1007 | { 1008 | "信封": "可回收物" 1009 | }, 1010 | { 1011 | "钥匙": "可回收物" 1012 | }, 1013 | { 1014 | "橡胶手套": "干垃圾" 1015 | }, 1016 | { 1017 | "塑料杯": "可回收物" 1018 | }, 1019 | { 1020 | "充电器": "可回收物" 1021 | }, 1022 | { 1023 | "坏钢笔": "干垃圾" 1024 | }, 1025 | { 1026 | "湿纸巾": "干垃圾" 1027 | }, 1028 | { 1029 | "指甲": "干垃圾" 1030 | }, 1031 | { 1032 | "化纤衣物": "可回收物" 1033 | }, 1034 | { 1035 | "笔": "干垃圾" 1036 | }, 1037 | { 1038 | "蔬菜": "湿垃圾" 1039 | }, 1040 | { 1041 | "杂志": "可回收物" 1042 | }, 1043 | { 1044 | "草": "湿垃圾" 1045 | }, 1046 | { 1047 | "化妆品塑料空瓶": "可回收物" 1048 | }, 1049 | { 1050 | "钢笔": "干垃圾" 1051 | }, 1052 | { 1053 | "有机溶剂包装": "有害垃圾" 1054 | }, 1055 | { 1056 | "手持电风扇": "电器电子产品" 1057 | }, 1058 | { 1059 | "白炽灯泡": "有害垃圾" 1060 | }, 1061 | { 1062 | "打火机": "干垃圾" 1063 | }, 1064 | { 1065 | "灯管": "有害垃圾" 1066 | }, 1067 | { 1068 | "衣物": "可回收物" 1069 | }, 1070 | { 1071 | "沐浴露玻璃空瓶": "可回收物" 1072 | }, 1073 | { 1074 | "泡面调料": "湿垃圾" 1075 | }, 1076 | { 1077 | "厕纸": "干垃圾" 1078 | }, 1079 | { 1080 | "洗碗手套": "干垃圾" 1081 | }, 1082 | { 1083 | "水银温度计": "有害垃圾" 1084 | }, 1085 | { 1086 | "鸡": "湿垃圾" 1087 | }, 1088 | { 1089 | "洗洁精空瓶": "可回收物" 1090 | }, 1091 | { 1092 | "冲泡饮料": "湿垃圾" 1093 | }, 1094 | { 1095 | "电子温度计": "电器电子产品" 1096 | }, 1097 | { 1098 | "金属汤匙": "可回收物" 1099 | }, 1100 | { 1101 | "骨头渣": "湿垃圾" 1102 | }, 1103 | { 1104 | "杀虫剂罐": "有害垃圾" 1105 | }, 1106 | { 1107 | "一次性餐具": "干垃圾" 1108 | }, 1109 | { 1110 | "大核桃壳": "干垃圾" 1111 | }, 1112 | { 1113 | "家禽内脏": "湿垃圾" 1114 | }, 1115 | { 1116 | "相片底片": "有害垃圾" 1117 | }, 1118 | { 1119 | "纸巾": "干垃圾" 1120 | }, 1121 | { 1122 | "苹果核": "湿垃圾" 1123 | }, 1124 | { 1125 | "椰子壳": "干垃圾" 1126 | }, 1127 | { 1128 | "电脑机箱": "电器电子产品" 1129 | }, 1130 | { 1131 | "胶带纸": "干垃圾" 1132 | }, 1133 | { 1134 | "香蕉干": "湿垃圾" 1135 | }, 1136 | { 1137 | "沐浴露塑料空瓶": "可回收物" 1138 | }, 1139 | { 1140 | "垃圾袋": "干垃圾" 1141 | }, 1142 | { 1143 | "搅拌棒": "干垃圾" 1144 | }, 1145 | { 1146 | "塑料充气沙发": "可回收物" 1147 | }, 1148 | { 1149 | "荔枝": "湿垃圾" 1150 | }, 1151 | { 1152 | "彩色铅笔": "干垃圾" 1153 | }, 1154 | { 1155 | "苹果": "湿垃圾" 1156 | }, 1157 | { 1158 | "电磁炉": "电器电子产品" 1159 | }, 1160 | { 1161 | "烤箱": "电器电子产品" 1162 | }, 1163 | { 1164 | "微波炉": "电器电子产品" 1165 | }, 1166 | { 1167 | "净水器": "电器电子产品" 1168 | }, 1169 | { 1170 | "加湿器": "电器电子产品" 1171 | }, 1172 | { 1173 | "除湿机": "电器电子产品" 1174 | }, 1175 | { 1176 | "空调": "电器电子产品" 1177 | }, 1178 | { 1179 | "冰箱": "电器电子产品" 1180 | }, 1181 | { 1182 | "洗衣机": "电器电子产品" 1183 | }, 1184 | { 1185 | "冰柜": "电器电子产品" 1186 | }, 1187 | { 1188 | "抽油烟机": "电器电子产品" 1189 | }, 1190 | { 1191 | "电磁炉": "电器电子产品" 1192 | }, 1193 | { 1194 | "烤箱": "电器电子产品" 1195 | }, 1196 | { 1197 | "微波炉": "电器电子产品" 1198 | }, 1199 | { 1200 | "净水器": "电器电子产品" 1201 | }, 1202 | { 1203 | "加湿器": "电器电子产品" 1204 | }, 1205 | { 1206 | "除湿机": "电器电子产品" 1207 | }, 1208 | { 1209 | "空调": "电器电子产品" 1210 | }, 1211 | { 1212 | "冰箱": "电器电子产品" 1213 | }, 1214 | { 1215 | "洗衣机": "电器电子产品" 1216 | }, 1217 | { 1218 | "冰柜": "电器电子产品" 1219 | }, 1220 | { 1221 | "抽油烟机": "电器电子产品" 1222 | }, 1223 | { 1224 | "苹果": "湿垃圾" 1225 | }, 1226 | { 1227 | "行李箱": "大件垃圾, 请询问物业如何投放" 1228 | }, 1229 | { 1230 | "陶瓷杯": "干垃圾" 1231 | }, 1232 | { 1233 | "碎陶瓷": "干垃圾" 1234 | }, 1235 | { 1236 | "陶瓷刀": "干垃圾" 1237 | }, 1238 | { 1239 | "毛毯": "可回收物" 1240 | }, 1241 | { 1242 | "尘土": "干垃圾" 1243 | }, 1244 | { 1245 | "口香糖": "干垃圾" 1246 | }, 1247 | { 1248 | "榴莲壳": "干垃圾" 1249 | }, 1250 | { 1251 | "椰子壳": "干垃圾" 1252 | }, 1253 | { 1254 | "柚子皮": "湿垃圾" 1255 | }, 1256 | { 1257 | "荔枝": "湿垃圾" 1258 | }, 1259 | { 1260 | "苹果": "湿垃圾" 1261 | }, 1262 | { 1263 | "花生": "湿垃圾" 1264 | }, 1265 | { 1266 | "杨梅": "湿垃圾" 1267 | }, 1268 | { 1269 | "圣女果": "湿垃圾" 1270 | }, 1271 | { 1272 | "杏仁": "湿垃圾" 1273 | }, 1274 | { 1275 | "西瓜": "湿垃圾" 1276 | }, 1277 | { 1278 | "香蕉": "湿垃圾" 1279 | }, 1280 | { 1281 | "榴莲": "干垃圾" 1282 | }, 1283 | { 1284 | "梨": "湿垃圾" 1285 | }, 1286 | { 1287 | "木瓜": "湿垃圾" 1288 | }, 1289 | { 1290 | "柠檬": "湿垃圾" 1291 | }, 1292 | { 1293 | "火龙果": "湿垃圾" 1294 | }, 1295 | { 1296 | "橙子": "湿垃圾" 1297 | }, 1298 | { 1299 | "草莓": "湿垃圾" 1300 | }, 1301 | { 1302 | "黄瓜": "湿垃圾" 1303 | }, 1304 | { 1305 | "槟榔": "湿垃圾" 1306 | }, 1307 | { 1308 | "柚子": "湿垃圾" 1309 | }, 1310 | { 1311 | "栗子": "湿垃圾" 1312 | }, 1313 | { 1314 | "樱桃": "湿垃圾" 1315 | }, 1316 | { 1317 | "菱角": "湿垃圾" 1318 | }, 1319 | { 1320 | "芒果": "湿垃圾" 1321 | }, 1322 | { 1323 | "凤梨": "湿垃圾" 1324 | }, 1325 | { 1326 | "榴莲": "干垃圾" 1327 | }, 1328 | { 1329 | "槟榔": "湿垃圾" 1330 | }, 1331 | { 1332 | "菠萝": "湿垃圾" 1333 | }, 1334 | { 1335 | "菱角": "湿垃圾" 1336 | }, 1337 | { 1338 | "柠檬": "湿垃圾" 1339 | }, 1340 | { 1341 | "梨": "湿垃圾" 1342 | }, 1343 | { 1344 | "西瓜": "湿垃圾" 1345 | }, 1346 | { 1347 | "柚子": "湿垃圾" 1348 | }, 1349 | { 1350 | "香蕉": "湿垃圾" 1351 | }, 1352 | { 1353 | "草莓": "湿垃圾" 1354 | }, 1355 | { 1356 | "桂圆": "湿垃圾" 1357 | }, 1358 | { 1359 | "葡萄": "湿垃圾" 1360 | }, 1361 | { 1362 | "樱桃": "湿垃圾" 1363 | }, 1364 | { 1365 | "木瓜": "湿垃圾" 1366 | }, 1367 | { 1368 | "杏仁": "湿垃圾" 1369 | }, 1370 | { 1371 | "杨梅": "湿垃圾" 1372 | }, 1373 | { 1374 | "黄瓜": "湿垃圾" 1375 | }, 1376 | { 1377 | "桃子": "湿垃圾" 1378 | }, 1379 | { 1380 | "橙子": "湿垃圾" 1381 | }, 1382 | { 1383 | "荔枝": "湿垃圾" 1384 | }, 1385 | { 1386 | "圣女果": "湿垃圾" 1387 | }, 1388 | { 1389 | "芒果": "湿垃圾" 1390 | }, 1391 | { 1392 | "花生": "湿垃圾" 1393 | }, 1394 | { 1395 | "火龙果": "湿垃圾" 1396 | }, 1397 | { 1398 | "栗子": "湿垃圾" 1399 | }, 1400 | { 1401 | "苹果": "湿垃圾" 1402 | }, 1403 | { 1404 | "开心果": "湿垃圾" 1405 | }, 1406 | { 1407 | "猕猴桃": "湿垃圾" 1408 | }, 1409 | { 1410 | "拖把": "干垃圾" 1411 | }, 1412 | { 1413 | "贝壳": "干垃圾" 1414 | }, 1415 | { 1416 | "纸巾": "干垃圾" 1417 | }, 1418 | { 1419 | "卫生纸": "干垃圾" 1420 | }, 1421 | { 1422 | "纸尿裤": "干垃圾" 1423 | }, 1424 | { 1425 | "颜料": "干垃圾" 1426 | }, 1427 | { 1428 | "油漆": "有害垃圾" 1429 | }, 1430 | { 1431 | "废药品": "有害垃圾" 1432 | }, 1433 | { 1434 | "杀虫剂": "有害垃圾" 1435 | }, 1436 | { 1437 | "节能灯泡": "有害垃圾" 1438 | }, 1439 | { 1440 | "荧光灯管": "有害垃圾" 1441 | }, 1442 | { 1443 | "水银温度计": "有害垃圾" 1444 | }, 1445 | { 1446 | "水银体温计": "有害垃圾" 1447 | }, 1448 | { 1449 | "可充电电池": "有害垃圾" 1450 | }, 1451 | { 1452 | "纽扣电池": "有害垃圾" 1453 | }, 1454 | { 1455 | "干电池": "有害垃圾" 1456 | }, 1457 | { 1458 | "荧光棒": "干垃圾" 1459 | }, 1460 | { 1461 | "电池": "有害垃圾" 1462 | }, 1463 | { 1464 | "废油漆": "有害垃圾" 1465 | }, 1466 | { 1467 | "废胶片": "有害垃圾" 1468 | }, 1469 | { 1470 | "剩饭": "湿垃圾" 1471 | }, 1472 | { 1473 | "瓜子壳": "湿垃圾" 1474 | }, 1475 | { 1476 | "茶叶渣": "湿垃圾" 1477 | }, 1478 | { 1479 | "中药渣": "湿垃圾" 1480 | }, 1481 | { 1482 | "蛋壳": "湿垃圾" 1483 | }, 1484 | { 1485 | "螃蟹壳": "湿垃圾" 1486 | }, 1487 | { 1488 | "虾壳": "湿垃圾" 1489 | }, 1490 | { 1491 | "鱼鳞": "湿垃圾" 1492 | }, 1493 | { 1494 | "蔬菜": "湿垃圾" 1495 | }, 1496 | { 1497 | "瓜果": "湿垃圾" 1498 | }, 1499 | { 1500 | "蛋壳": "湿垃圾" 1501 | }, 1502 | { 1503 | "米饭": "湿垃圾" 1504 | }, 1505 | { 1506 | "过期食品": "湿垃圾" 1507 | }, 1508 | { 1509 | "手机": "电器电子产品" 1510 | }, 1511 | { 1512 | "平板电脑": "电器电子产品" 1513 | }, 1514 | { 1515 | "摄像头": "电器电子产品" 1516 | }, 1517 | { 1518 | "游戏机": "电器电子产品" 1519 | }, 1520 | { 1521 | "耳机": "电器电子产品" 1522 | }, 1523 | { 1524 | "酒瓶": "可回收物" 1525 | }, 1526 | { 1527 | "玻璃杯": "可回收物" 1528 | }, 1529 | { 1530 | "镜子": "干垃圾" 1531 | }, 1532 | { 1533 | "剪刀": "可回收物" 1534 | }, 1535 | { 1536 | "刀片": "可回收物" 1537 | }, 1538 | { 1539 | "金属工具": "可回收物" 1540 | }, 1541 | { 1542 | "窗帘": "可回收物" 1543 | }, 1544 | { 1545 | "布包": "可回收物" 1546 | }, 1547 | { 1548 | "毛巾": "干垃圾" 1549 | }, 1550 | { 1551 | "袜子": "干垃圾" 1552 | }, 1553 | { 1554 | "领带": "可回收物" 1555 | }, 1556 | { 1557 | "报纸": "可回收物" 1558 | }, 1559 | { 1560 | "宣传单": "可回收物" 1561 | }, 1562 | { 1563 | "包装纸盒": "可回收物" 1564 | }, 1565 | { 1566 | "牛奶盒": "可回收物" 1567 | }, 1568 | { 1569 | "方便面袋": "干垃圾" 1570 | }, 1571 | { 1572 | "吸管": "干垃圾" 1573 | }, 1574 | { 1575 | "一次性杯子": "干垃圾" 1576 | }, 1577 | { 1578 | "雨衣": "干垃圾" 1579 | }, 1580 | { 1581 | "泡沫板": "可回收物" 1582 | }, 1583 | { 1584 | "纸": "可回收物" 1585 | }, 1586 | { 1587 | "废塑料": "可回收物" 1588 | }, 1589 | { 1590 | "废金属": "可回收物" 1591 | }, 1592 | { 1593 | "百洁布": "干垃圾" 1594 | }, 1595 | { 1596 | "洗碗布": "干垃圾" 1597 | }, 1598 | { 1599 | "冰柜": "电器电子产品" 1600 | }, 1601 | { 1602 | "锡纸": "干垃圾" 1603 | }, 1604 | { 1605 | "冰箱": "电器电子产品" 1606 | }, 1607 | { 1608 | "玻璃杯": "可回收物" 1609 | }, 1610 | { 1611 | "插头": "可回收物" 1612 | }, 1613 | { 1614 | "洗衣机": "电器电子产品" 1615 | }, 1616 | { 1617 | "保鲜膜": "干垃圾" 1618 | }, 1619 | { 1620 | "金鱼": "湿垃圾" 1621 | }, 1622 | { 1623 | "打火机": "干垃圾" 1624 | }, 1625 | { 1626 | "雨刮器": "干垃圾" 1627 | }, 1628 | { 1629 | "蓄电池": "有害垃圾" 1630 | }, 1631 | { 1632 | "空调": "电器电子产品" 1633 | }, 1634 | { 1635 | "塑料护肤品空瓶": "可回收物" 1636 | }, 1637 | { 1638 | "鱼类": "湿垃圾" 1639 | }, 1640 | { 1641 | "杀虫剂瓶": "有害垃圾" 1642 | }, 1643 | { 1644 | "牙膏壳": "干垃圾" 1645 | }, 1646 | { 1647 | "电热水器": "电器电子产品" 1648 | }, 1649 | { 1650 | "废金属": "可回收物" 1651 | }, 1652 | { 1653 | "食用油桶": "可回收物" 1654 | }, 1655 | { 1656 | "木头铅笔": "干垃圾" 1657 | }, 1658 | { 1659 | "甘蔗皮": "干垃圾" 1660 | }, 1661 | { 1662 | "木制品": "可回收物" 1663 | }, 1664 | { 1665 | "矿泉水瓶": "可回收物" 1666 | }, 1667 | { 1668 | "节能灯泡": "有害垃圾" 1669 | }, 1670 | { 1671 | "椰子肉": "湿垃圾" 1672 | }, 1673 | { 1674 | "塑料制品": "可回收物" 1675 | }, 1676 | { 1677 | "含汞血压计": "有害垃圾" 1678 | }, 1679 | { 1680 | "厨房用纸": "干垃圾" 1681 | }, 1682 | { 1683 | "山竹皮": "湿垃圾" 1684 | }, 1685 | { 1686 | "烂苹果": "湿垃圾" 1687 | }, 1688 | { 1689 | "纸质购物袋": "可回收物" 1690 | }, 1691 | { 1692 | "污损旧衣服": "干垃圾" 1693 | }, 1694 | { 1695 | "护肤品塑料空瓶": "可回收物" 1696 | }, 1697 | { 1698 | "线": "干垃圾" 1699 | }, 1700 | { 1701 | "桂圆": "湿垃圾" 1702 | }, 1703 | { 1704 | "啤酒瓶": "可回收物" 1705 | }, 1706 | { 1707 | "开心果壳": "湿垃圾" 1708 | }, 1709 | { 1710 | "奶油蛋糕": "湿垃圾" 1711 | }, 1712 | { 1713 | "纸质一次性杯子": "干垃圾" 1714 | }, 1715 | { 1716 | "乳胶手套": "干垃圾" 1717 | }, 1718 | { 1719 | "猕猴桃": "湿垃圾" 1720 | }, 1721 | { 1722 | "大骨头": "干垃圾" 1723 | }, 1724 | { 1725 | "门锁": "可回收物" 1726 | }, 1727 | { 1728 | "相片": "有害垃圾" 1729 | }, 1730 | { 1731 | "衣服吊牌": "干垃圾" 1732 | }, 1733 | { 1734 | "玻璃制品": "可回收物" 1735 | }, 1736 | { 1737 | "玻璃": "可回收物" 1738 | }, 1739 | { 1740 | "灯泡": "有害垃圾" 1741 | }, 1742 | { 1743 | "血压计": "电器电子产品" 1744 | }, 1745 | { 1746 | "鱼肉": "湿垃圾" 1747 | }, 1748 | { 1749 | "消毒药片": "有害垃圾" 1750 | }, 1751 | { 1752 | "衣物干燥剂": "干垃圾" 1753 | }, 1754 | { 1755 | "西瓜": "湿垃圾" 1756 | }, 1757 | { 1758 | "枇杷叶": "湿垃圾" 1759 | }, 1760 | { 1761 | "纸塑铝复合包装": "可回收物" 1762 | }, 1763 | { 1764 | "扫把": "干垃圾" 1765 | }, 1766 | { 1767 | "过期药品": "有害垃圾" 1768 | }, 1769 | { 1770 | "金属": "可回收物" 1771 | }, 1772 | { 1773 | "榛子壳": "干垃圾" 1774 | }, 1775 | { 1776 | "胶带": "干垃圾" 1777 | }, 1778 | { 1779 | "水银血压计": "有害垃圾" 1780 | }, 1781 | { 1782 | "香蕉": "湿垃圾" 1783 | }, 1784 | { 1785 | "碧根果壳": "干垃圾" 1786 | }, 1787 | { 1788 | "桂圆干": "湿垃圾" 1789 | }, 1790 | { 1791 | "玻璃杯": "可回收物" 1792 | }, 1793 | { 1794 | "纸": "可回收物" 1795 | }, 1796 | { 1797 | "铁": "可回收物" 1798 | }, 1799 | { 1800 | "洗发露玻璃空瓶": "可回收物" 1801 | }, 1802 | { 1803 | "杏": "湿垃圾" 1804 | }, 1805 | { 1806 | "衣服": "可回收物" 1807 | }, 1808 | { 1809 | "葡萄": "湿垃圾" 1810 | }, 1811 | { 1812 | "老鼠药": "有害垃圾" 1813 | }, 1814 | { 1815 | "肥皂": "干垃圾" 1816 | }, 1817 | { 1818 | "过期糕点": "湿垃圾" 1819 | }, 1820 | { 1821 | "电池": "有害垃圾" 1822 | }, 1823 | { 1824 | "调料包装袋": "干垃圾" 1825 | }, 1826 | { 1827 | "牙膏皮": "干垃圾" 1828 | }, 1829 | { 1830 | "石榴皮": "湿垃圾" 1831 | }, 1832 | { 1833 | "陶瓷刀": "干垃圾" 1834 | }, 1835 | { 1836 | "可降解垃圾袋": "干垃圾" 1837 | }, 1838 | { 1839 | "奶茶杯": "干垃圾" 1840 | }, 1841 | { 1842 | "有机溶剂": "有害垃圾" 1843 | }, 1844 | { 1845 | "金属厨具": "可回收物" 1846 | }, 1847 | { 1848 | "塑料奶茶杯": "干垃圾" 1849 | }, 1850 | { 1851 | "玻璃罐": "可回收物" 1852 | }, 1853 | { 1854 | "肉": "湿垃圾" 1855 | }, 1856 | { 1857 | "茶壶碎片": "干垃圾" 1858 | }, 1859 | { 1860 | "塑料": "可回收物" 1861 | }, 1862 | { 1863 | "农药瓶": "有害垃圾" 1864 | }, 1865 | { 1866 | "陶瓷杯": "干垃圾" 1867 | }, 1868 | { 1869 | "无花果壳": "湿垃圾" 1870 | }, 1871 | { 1872 | "啤酒瓶盖": "可回收物" 1873 | }, 1874 | { 1875 | "菜": "湿垃圾" 1876 | }, 1877 | { 1878 | "核桃壳": "干垃圾" 1879 | }, 1880 | { 1881 | "剪刀": "可回收物" 1882 | }, 1883 | { 1884 | "鸡头": "湿垃圾" 1885 | }, 1886 | { 1887 | "荧光灯": "有害垃圾" 1888 | }, 1889 | { 1890 | "蓝莓干": "湿垃圾" 1891 | }, 1892 | { 1893 | "软木塞": "干垃圾" 1894 | }, 1895 | { 1896 | "腐烂蔬菜": "湿垃圾" 1897 | }, 1898 | { 1899 | "废旧抹布": "干垃圾" 1900 | }, 1901 | { 1902 | "厨房垃圾袋": "干垃圾" 1903 | }, 1904 | { 1905 | "皮带": "可回收物" 1906 | }, 1907 | { 1908 | "龙眼壳": "湿垃圾" 1909 | }, 1910 | { 1911 | "金属锅": "可回收物" 1912 | }, 1913 | { 1914 | "药品": "有害垃圾" 1915 | }, 1916 | { 1917 | "生日蜡烛": "干垃圾" 1918 | }, 1919 | { 1920 | "布": "可回收物" 1921 | }, 1922 | { 1923 | "火柴": "干垃圾" 1924 | }, 1925 | { 1926 | "饮料玻璃瓶": "可回收物" 1927 | }, 1928 | { 1929 | "饮料塑料瓶": "可回收物" 1930 | }, 1931 | { 1932 | "塑料瓶盖": "可回收物" 1933 | }, 1934 | { 1935 | "洗发露塑料空瓶": "可回收物" 1936 | }, 1937 | { 1938 | "烂香蕉": "湿垃圾" 1939 | }, 1940 | { 1941 | "电热水壶": "电器电子产品" 1942 | }, 1943 | { 1944 | "鸭": "湿垃圾" 1945 | }, 1946 | { 1947 | "电脑包": "可回收物" 1948 | }, 1949 | { 1950 | "山竹": "湿垃圾" 1951 | }, 1952 | { 1953 | "奶酪": "湿垃圾" 1954 | }, 1955 | { 1956 | "木塞": "干垃圾" 1957 | }, 1958 | { 1959 | "塑料筷子": "可回收物" 1960 | }, 1961 | { 1962 | "山楂片": "湿垃圾" 1963 | }, 1964 | { 1965 | "鱼内脏": "湿垃圾" 1966 | }, 1967 | { 1968 | "玻璃胶带": "干垃圾" 1969 | }, 1970 | { 1971 | "滤水壶滤芯": "干垃圾" 1972 | }, 1973 | { 1974 | "木筷子": "可回收物" 1975 | }, 1976 | { 1977 | "瓜": "湿垃圾" 1978 | }, 1979 | { 1980 | "相片纸": "有害垃圾" 1981 | }, 1982 | { 1983 | "牛奶瓶吸管": "干垃圾" 1984 | }, 1985 | { 1986 | "密胺餐具": "可回收物" 1987 | }, 1988 | { 1989 | "火锅调料": "湿垃圾" 1990 | }, 1991 | { 1992 | "金属制容器": "可回收物" 1993 | }, 1994 | { 1995 | "鱼": "湿垃圾" 1996 | }, 1997 | { 1998 | "碎陶瓷": "干垃圾" 1999 | }, 2000 | { 2001 | "风味蛋糕": "湿垃圾" 2002 | }, 2003 | { 2004 | "废塑料": "可回收物" 2005 | }, 2006 | { 2007 | "山竹壳": "湿垃圾" 2008 | }, 2009 | { 2010 | "枣": "湿垃圾" 2011 | }, 2012 | { 2013 | "塑料打火机": "干垃圾" 2014 | }, 2015 | { 2016 | "护肤品玻璃空瓶": "可回收物" 2017 | }, 2018 | { 2019 | "含汞温度计": "有害垃圾" 2020 | }, 2021 | { 2022 | "肮脏塑料袋": "干垃圾" 2023 | }, 2024 | { 2025 | "塑料擀面杖": "可回收物" 2026 | }, 2027 | { 2028 | "冷暖气机": "电器电子产品" 2029 | }, 2030 | { 2031 | "蜡烛": "干垃圾" 2032 | }, 2033 | { 2034 | "干电池": "有害垃圾" 2035 | }, 2036 | { 2037 | "废旧牙刷": "干垃圾" 2038 | }, 2039 | { 2040 | "照相机": "电器电子产品" 2041 | }, 2042 | { 2043 | "乌龟壳": "干垃圾" 2044 | }, 2045 | { 2046 | "纺织物": "可回收物" 2047 | }, 2048 | { 2049 | "鹅骨头": "湿垃圾" 2050 | }, 2051 | { 2052 | "化妆品包装袋": "干垃圾" 2053 | }, 2054 | { 2055 | "有害垃圾": "有害垃圾" 2056 | }, 2057 | { 2058 | "落地电风扇": "电器电子产品" 2059 | }, 2060 | { 2061 | "搅拌勺": "干垃圾" 2062 | }, 2063 | { 2064 | "小核桃仁": "湿垃圾" 2065 | }, 2066 | { 2067 | "葡萄干": "湿垃圾" 2068 | }, 2069 | { 2070 | "死老鼠": "湿垃圾" 2071 | }, 2072 | { 2073 | "废药品": "有害垃圾" 2074 | }, 2075 | { 2076 | "牙膏软管": "干垃圾" 2077 | }, 2078 | { 2079 | "杀虫剂": "有害垃圾" 2080 | }, 2081 | { 2082 | "照相机电池": "有害垃圾" 2083 | }, 2084 | { 2085 | "纺织布": "可回收物" 2086 | }, 2087 | { 2088 | "胶卷": "有害垃圾" 2089 | }, 2090 | { 2091 | "旧浴巾": "干垃圾" 2092 | }, 2093 | { 2094 | "蛋糕": "湿垃圾" 2095 | }, 2096 | { 2097 | "化妆品玻璃空瓶": "可回收物" 2098 | }, 2099 | { 2100 | "苹果": "湿垃圾" 2101 | }, 2102 | { 2103 | "瓜果": "湿垃圾" 2104 | }, 2105 | { 2106 | "太阳能热水器": "电器电子产品" 2107 | }, 2108 | { 2109 | "蓄电池": "有害垃圾" 2110 | }, 2111 | { 2112 | "机械表": "可回收物" 2113 | }, 2114 | { 2115 | "塑料袋": "干垃圾" 2116 | }, 2117 | { 2118 | "动物内脏": "湿垃圾" 2119 | }, 2120 | { 2121 | "木质擀面杖": "可回收物" 2122 | }, 2123 | { 2124 | "花盆": "干垃圾" 2125 | }, 2126 | { 2127 | "乳制品": "湿垃圾" 2128 | }, 2129 | { 2130 | "锂电池": "有害垃圾" 2131 | }, 2132 | { 2133 | "玻璃餐具": "可回收物" 2134 | }, 2135 | { 2136 | "一次性筷子": "干垃圾" 2137 | }, 2138 | { 2139 | "荧光灯管": "有害垃圾" 2140 | }, 2141 | { 2142 | "花": "湿垃圾" 2143 | }, 2144 | { 2145 | "一次性杯子": "干垃圾" 2146 | }, 2147 | { 2148 | "瓜果蔬菜": "湿垃圾" 2149 | }, 2150 | { 2151 | "葡萄皮": "湿垃圾" 2152 | }, 2153 | { 2154 | "鸡鸭骨头": "湿垃圾" 2155 | }, 2156 | { 2157 | "有机溶剂类包装物": "有害垃圾" 2158 | }, 2159 | { 2160 | "信封": "可回收物" 2161 | }, 2162 | { 2163 | "钥匙": "可回收物" 2164 | }, 2165 | { 2166 | "橡胶手套": "干垃圾" 2167 | }, 2168 | { 2169 | "塑料杯": "可回收物" 2170 | }, 2171 | { 2172 | "充电器": "可回收物" 2173 | }, 2174 | { 2175 | "坏钢笔": "干垃圾" 2176 | }, 2177 | { 2178 | "湿纸巾": "干垃圾" 2179 | }, 2180 | { 2181 | "指甲": "干垃圾" 2182 | }, 2183 | { 2184 | "化纤衣物": "可回收物" 2185 | }, 2186 | { 2187 | "笔": "干垃圾" 2188 | }, 2189 | { 2190 | "蔬菜": "湿垃圾" 2191 | }, 2192 | { 2193 | "杂志": "可回收物" 2194 | }, 2195 | { 2196 | "草": "湿垃圾" 2197 | }, 2198 | { 2199 | "化妆品塑料空瓶": "可回收物" 2200 | }, 2201 | { 2202 | "钢笔": "干垃圾" 2203 | }, 2204 | { 2205 | "有机溶剂包装": "有害垃圾" 2206 | }, 2207 | { 2208 | "手持电风扇": "电器电子产品" 2209 | }, 2210 | { 2211 | "白炽灯泡": "有害垃圾" 2212 | }, 2213 | { 2214 | "打火机": "干垃圾" 2215 | }, 2216 | { 2217 | "灯管": "有害垃圾" 2218 | }, 2219 | { 2220 | "衣物": "可回收物" 2221 | }, 2222 | { 2223 | "沐浴露玻璃空瓶": "可回收物" 2224 | }, 2225 | { 2226 | "泡面调料": "湿垃圾" 2227 | }, 2228 | { 2229 | "厕纸": "干垃圾" 2230 | }, 2231 | { 2232 | "洗碗手套": "干垃圾" 2233 | }, 2234 | { 2235 | "水银温度计": "有害垃圾" 2236 | }, 2237 | { 2238 | "鸡": "湿垃圾" 2239 | }, 2240 | { 2241 | "洗洁精空瓶": "可回收物" 2242 | }, 2243 | { 2244 | "冲泡饮料": "湿垃圾" 2245 | }, 2246 | { 2247 | "电子温度计": "电器电子产品" 2248 | }, 2249 | { 2250 | "金属汤匙": "可回收物" 2251 | }, 2252 | { 2253 | "骨头渣": "湿垃圾" 2254 | }, 2255 | { 2256 | "杀虫剂罐": "有害垃圾" 2257 | }, 2258 | { 2259 | "一次性餐具": "干垃圾" 2260 | }, 2261 | { 2262 | "大核桃壳": "干垃圾" 2263 | }, 2264 | { 2265 | "家禽内脏": "湿垃圾" 2266 | }, 2267 | { 2268 | "相片底片": "有害垃圾" 2269 | }, 2270 | { 2271 | "纸巾": "干垃圾" 2272 | }, 2273 | { 2274 | "苹果核": "湿垃圾" 2275 | }, 2276 | { 2277 | "椰子壳": "干垃圾" 2278 | }, 2279 | { 2280 | "电脑机箱": "电器电子产品" 2281 | }, 2282 | { 2283 | "胶带纸": "干垃圾" 2284 | }, 2285 | { 2286 | "香蕉干": "湿垃圾" 2287 | }, 2288 | { 2289 | "沐浴露塑料空瓶": "可回收物" 2290 | }, 2291 | { 2292 | "垃圾袋": "干垃圾" 2293 | }, 2294 | { 2295 | "搅拌棒": "干垃圾" 2296 | }, 2297 | { 2298 | "塑料充气沙发": "可回收物" 2299 | }, 2300 | { 2301 | "荔枝": "湿垃圾" 2302 | }, 2303 | { 2304 | "彩色铅笔": "干垃圾" 2305 | } 2306 | ] -------------------------------------------------------------------------------- /ansdata/answer_data.txt: -------------------------------------------------------------------------------- 1 | {'鞋子': '可回收物'}{'避孕药': '有害垃圾'}{'酒精棉球': '干垃圾'}{'易拉罐': '可回收物'}{'易拉罐': '可回收物'}{'易拉罐': '可回收物'}{'猪肉': '湿垃圾'}{'手电筒': '电器电子产品'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'苹果皮': '湿垃圾'}{'竹子': '干垃圾'}{'果皮': '湿垃圾'}{'猪肉': '湿垃圾'}{'姨妈巾': '干垃圾'}{'猪肉': '湿垃圾'}{'姨妈巾': '干垃圾'}{'鸡肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'鱼骨头': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'动物毛发': '干垃圾'}{'卫生巾': '干垃圾'}{'餐巾纸': '干垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'照片': '有害垃圾'}{'玻璃瓶': '可回收物'}{'小龙虾': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'小龙虾': '湿垃圾'}{'青菜': '湿垃圾'}{'炸鸡': '湿垃圾'}{'土豆': '湿垃圾'}{'白菜': '湿垃圾'}{'梨核': '湿垃圾'}{'飞机杯': '干垃圾'}{'橡皮擦': '干垃圾'}{'易拉罐': '可回收物'}{'可乐空罐': '可回收物'}{'虾': '湿垃圾'}{'易拉罐': '可回收物'}{'猪肉': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'大米': '湿垃圾'}{'头发': '干垃圾'}{'头发': '干垃圾'}{'猫砂': '干垃圾'}{'龙虾壳': '湿垃圾'}{'鸡骨头': '湿垃圾'}{'鸡骨头': '湿垃圾'}{'鸡骨头': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'猪肉': '湿垃圾'}{'韭菜': '湿垃圾'}{'头发': '干垃圾'}{'湿巾纸': '干垃圾'}{'湿巾纸包装': '干垃圾'}{'奶茶纸杯': '干垃圾'}{'咖啡纸杯': '干垃圾'}{'香蕉皮': '湿垃圾'}{'鲜花': '湿垃圾'}{'小龙虾': '湿垃圾'}{'鸡蛋': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'猪肉': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'苹果皮': '湿垃圾'}{'牙签': '干垃圾'}{'手机壳': '干垃圾'}{'避孕套': '干垃圾'}{'香蕉皮': '湿垃圾'}{'眼镜': '干垃圾'}{'避孕套': '干垃圾'}{'被子': '可回收物'}{'鞋子': '可回收物'}{'鸡翅': '湿垃圾'}{'猪肉': '湿垃圾'}{'鼠标': '电器电子产品'}{'螺丝刀': '可回收物'}{'塑料盆': '可回收物'}{'塑料盆': '可回收物'}{'塑料盆': '可回收物'}{'塑料盆': '可回收物'}{'猪肉': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'香蕉皮': '湿垃圾'}{'易拉罐': '可回收物'}{'避孕套': '干垃圾'}{'一次性纸杯': '干垃圾'}{'一次性纸杯': '干垃圾'}{'苹果皮': '湿垃圾'}{'剩饭剩菜': '湿垃圾'}{'苹果皮': '湿垃圾'}{'豆腐': '湿垃圾'}{'头发': '干垃圾'}{'方便面': '湿垃圾'} -------------------------------------------------------------------------------- /ansdata/answer_data0.json: -------------------------------------------------------------------------------- 1 | {"湿垃圾": ["苹果", "柚子皮", "荔枝", "花生", "杨梅", "圣女果", "杏仁", "西瓜", "香蕉", "梨", "木瓜", "柠檬", "火龙果", "橙子", "草莓", "黄瓜", "槟榔", "柚子", "栗子", "樱桃", "菱角", "芒果", "凤梨", "菠萝", "桂圆", "葡萄", "桃子", "开心果", "猕猴桃", "剩饭", "瓜子壳", "茶叶渣", "中药渣", "蛋壳", "螃蟹壳", "虾壳", "鱼鳞", "蔬菜", "瓜果", "米饭", "过期食品", "金鱼", "鱼类", "椰子肉", "山竹皮", "烂苹果", "开心果壳", "奶油蛋糕", "鱼肉", "枇杷叶", "桂圆干", "杏", "过期糕点", "石榴皮", "肉", "无花果壳", "菜", "鸡头", "蓝莓干", "腐烂蔬菜", "龙眼壳", "烂香蕉", "鸭", "山竹", "奶酪", "山楂片", "鱼内脏", "瓜", "火锅调料", "鱼", "风味蛋糕", "山竹壳", "枣", "鹅骨头", "小核桃仁", "葡萄干", "死老鼠", "蛋糕", "动物内脏", "乳制品", "花", "瓜果蔬菜", "葡萄皮", "鸡鸭骨头", "草", "泡面调料", "鸡", "冲泡饮料", "骨头渣", "家禽内脏", "苹果核", "香蕉干"], "电器电子产品": ["电磁炉", "烤箱", "微波炉", "净水器", "加湿器", "除湿机", "空调", "冰箱", "洗衣机", "冰柜", "抽油烟机", "手机", "平板电脑", "摄像头", "游戏机", "耳机", "电热水器", "血压计", "电热水壶", "冷暖气机", "照相机", "落地电风扇", "太阳能热水器", "手持电风扇", "电子温度计", "电脑机箱"], "大件垃圾, 请询问物业如何投放": ["行李箱"], "干垃圾": ["陶瓷杯", "碎陶瓷", "陶瓷刀", "尘土", "口香糖", "榴莲壳", "椰子壳", "榴莲", "拖把", "贝壳", "纸巾", "卫生纸", "纸尿裤", "颜料", "荧光棒", "镜子", "毛巾", "袜子", "方便面袋", "吸管", "一次性杯子", "雨衣", "百洁布", "洗碗布", "锡纸", "保鲜膜", "打火机", "雨刮器", "牙膏壳", "木头铅笔", "甘蔗皮", "厨房用纸", "污损旧衣服", "线", "纸质一次性杯子", "乳胶手套", "大骨头", "衣服吊牌", "衣物干燥剂", "扫把", "榛子壳", "胶带", "碧根果壳", "肥皂", "调料包装袋", "牙膏皮", "可降解垃圾袋", "奶茶杯", "塑料奶茶杯", "茶壶碎片", "核桃壳", "软木塞", "废旧抹布", "厨房垃圾袋", "生日蜡烛", "火柴", "木塞", "玻璃胶带", "滤水壶滤芯", "牛奶瓶吸管", "塑料打火机", "肮脏塑料袋", "蜡烛", "废旧牙刷", "乌龟壳", "化妆品包装袋", "搅拌勺", "牙膏软管", "旧浴巾", "塑料袋", "花盆", "一次性筷子", "橡胶手套", "坏钢笔", "湿纸巾", "指甲", "笔", "钢笔", "厕纸", "洗碗手套", "一次性餐具", "大核桃壳", "胶带纸", "垃圾袋", "搅拌棒", "彩色铅笔"], "可回收物": ["毛毯", "酒瓶", "玻璃杯", "剪刀", "刀片", "金属工具", "窗帘", "布包", "领带", "报纸", "宣传单", "包装纸盒", "牛奶盒", "泡沫板", "纸", "废塑料", "废金属", "插头", "塑料护肤品空瓶", "食用油桶", "木制品", "矿泉水瓶", "塑料制品", "纸质购物袋", "护肤品塑料空瓶", "啤酒瓶", "门锁", "玻璃制品", "玻璃", "纸塑铝复合包装", "金属", "铁", "洗发露玻璃空瓶", "衣服", "金属厨具", "玻璃罐", "塑料", "啤酒瓶盖", "皮带", "金属锅", "布", "饮料玻璃瓶", "饮料塑料瓶", "塑料瓶盖", "洗发露塑料空瓶", "电脑包", "塑料筷子", "木筷子", "密胺餐具", "金属制容器", "护肤品玻璃空瓶", "塑料擀面杖", "纺织物", "纺织布", "化妆品玻璃空瓶", "机械表", "木质擀面杖", "玻璃餐具", "信封", "钥匙", "塑料杯", "充电器", "化纤衣物", "杂志", "化妆品塑料空瓶", "衣物", "沐浴露玻璃空瓶", "洗洁精空瓶", "金属汤匙", "沐浴露塑料空瓶", "塑料充气沙发"], "有害垃圾": ["油漆", "废药品", "杀虫剂", "节能灯泡", "荧光灯管", "水银温度计", "水银体温计", "可充电电池", "纽扣电池", "干电池", "电池", "废油漆", "废胶片", "蓄电池", "杀虫剂瓶", "含汞血压计", "相片", "灯泡", "消毒药片", "过期药品", "水银血压计", "老鼠药", "有机溶剂", "农药瓶", "荧光灯", "药品", "相片纸", "含汞温度计", "有害垃圾", "照相机电池", "胶卷", "锂电池", "有机溶剂类包装物", "有机溶剂包装", "白炽灯泡", "灯管", "杀虫剂罐", "相片底片"]} -------------------------------------------------------------------------------- /ansdata/answer_data0.txt: -------------------------------------------------------------------------------- 1 | {'苹果': '湿垃圾'}{'电磁炉': '电器电子产品'}{'烤箱': '电器电子产品'}{'微波炉': '电器电子产品'}{'净水器': '电器电子产品'}{'加湿器': '电器电子产品'}{'除湿机': '电器电子产品'}{'空调': '电器电子产品'}{'冰箱': '电器电子产品'}{'洗衣机': '电器电子产品'}{'冰柜': '电器电子产品'}{'抽油烟机': '电器电子产品'}{'电磁炉': '电器电子产品'}{'烤箱': '电器电子产品'}{'微波炉': '电器电子产品'}{'净水器': '电器电子产品'}{'加湿器': '电器电子产品'}{'除湿机': '电器电子产品'}{'空调': '电器电子产品'}{'冰箱': '电器电子产品'}{'洗衣机': '电器电子产品'}{'冰柜': '电器电子产品'}{'抽油烟机': '电器电子产品'}{'苹果': '湿垃圾'}{'行李箱': '大件垃圾, 请询问物业如何投放'}{'陶瓷杯': '干垃圾'}{'碎陶瓷': '干垃圾'}{'陶瓷刀': '干垃圾'}{'毛毯': '可回收物'}{'尘土': '干垃圾'}{'口香糖': '干垃圾'}{'榴莲壳': '干垃圾'}{'椰子壳': '干垃圾'}{'柚子皮': '湿垃圾'}{'荔枝': '湿垃圾'}{'苹果': '湿垃圾'}{'花生': '湿垃圾'}{'杨梅': '湿垃圾'}{'圣女果': '湿垃圾'}{'杏仁': '湿垃圾'}{'西瓜': '湿垃圾'}{'香蕉': '湿垃圾'}{'榴莲': '干垃圾'}{'梨': '湿垃圾'}{'木瓜': '湿垃圾'}{'柠檬': '湿垃圾'}{'火龙果': '湿垃圾'}{'橙子': '湿垃圾'}{'草莓': '湿垃圾'}{'黄瓜': '湿垃圾'}{'槟榔': '湿垃圾'}{'柚子': '湿垃圾'}{'栗子': '湿垃圾'}{'樱桃': '湿垃圾'}{'菱角': '湿垃圾'}{'芒果': '湿垃圾'}{'凤梨': '湿垃圾'}{'榴莲': '干垃圾'}{'槟榔': '湿垃圾'}{'菠萝': '湿垃圾'}{'菱角': '湿垃圾'}{'柠檬': '湿垃圾'}{'梨': '湿垃圾'}{'西瓜': '湿垃圾'}{'柚子': '湿垃圾'}{'香蕉': '湿垃圾'}{'草莓': '湿垃圾'}{'桂圆': '湿垃圾'}{'葡萄': '湿垃圾'}{'樱桃': '湿垃圾'}{'木瓜': '湿垃圾'}{'杏仁': '湿垃圾'}{'杨梅': '湿垃圾'}{'黄瓜': '湿垃圾'}{'桃子': '湿垃圾'}{'橙子': '湿垃圾'}{'荔枝': '湿垃圾'}{'圣女果': '湿垃圾'}{'芒果': '湿垃圾'}{'花生': '湿垃圾'}{'火龙果': '湿垃圾'}{'栗子': '湿垃圾'}{'苹果': '湿垃圾'}{'开心果': '湿垃圾'}{'猕猴桃': '湿垃圾'}{'拖把': '干垃圾'}{'贝壳': '干垃圾'}{'纸巾': '干垃圾'}{'卫生纸': '干垃圾'}{'纸尿裤': '干垃圾'}{'颜料': '干垃圾'}{'油漆': '有害垃圾'}{'废药品': '有害垃圾'}{'杀虫剂': '有害垃圾'}{'节能灯泡': '有害垃圾'}{'荧光灯管': '有害垃圾'}{'水银温度计': '有害垃圾'}{'水银体温计': '有害垃圾'}{'可充电电池': '有害垃圾'}{'纽扣电池': '有害垃圾'}{'干电池': '有害垃圾'}{'荧光棒': '干垃圾'}{'电池': '有害垃圾'}{'废油漆': '有害垃圾'}{'废胶片': '有害垃圾'}{'剩饭': '湿垃圾'}{'瓜子壳': '湿垃圾'}{'茶叶渣': '湿垃圾'}{'中药渣': '湿垃圾'}{'蛋壳': '湿垃圾'}{'螃蟹壳': '湿垃圾'}{'虾壳': '湿垃圾'}{'鱼鳞': '湿垃圾'}{'蔬菜': '湿垃圾'}{'瓜果': '湿垃圾'}{'蛋壳': '湿垃圾'}{'米饭': '湿垃圾'}{'过期食品': '湿垃圾'}{'手机': '电器电子产品'}{'平板电脑': '电器电子产品'}{'摄像头': '电器电子产品'}{'游戏机': '电器电子产品'}{'耳机': '电器电子产品'}{'酒瓶': '可回收物'}{'玻璃杯': '可回收物'}{'镜子': '干垃圾'}{'剪刀': '可回收物'}{'刀片': '可回收物'}{'金属工具': '可回收物'}{'窗帘': '可回收物'}{'布包': '可回收物'}{'毛巾': '干垃圾'}{'袜子': '干垃圾'}{'领带': '可回收物'}{'报纸': '可回收物'}{'宣传单': '可回收物'}{'包装纸盒': '可回收物'}{'牛奶盒': '可回收物'}{'方便面袋': '干垃圾'}{'吸管': '干垃圾'}{'一次性杯子': '干垃圾'}{'雨衣': '干垃圾'}{'泡沫板': '可回收物'}{'纸': '可回收物'}{'废塑料': '可回收物'}{'废金属': '可回收物'}{'百洁布': '干垃圾'}{'洗碗布': '干垃圾'}{'冰柜': '电器电子产品'}{'锡纸': '干垃圾'}{'冰箱': '电器电子产品'}{'玻璃杯': '可回收物'}{'插头': '可回收物'}{'洗衣机': '电器电子产品'}{'保鲜膜': '干垃圾'}{'金鱼': '湿垃圾'}{'打火机': '干垃圾'}{'雨刮器': '干垃圾'}{'蓄电池': '有害垃圾'}{'空调': '电器电子产品'} -------------------------------------------------------------------------------- /ansdata/good_data.json: -------------------------------------------------------------------------------- 1 | {"苹果": "湿垃圾", "柚子皮": "湿垃圾", "荔枝": "湿垃圾", "花生": "湿垃圾", "杨梅": "湿垃圾", "圣女果": "湿垃圾", "杏仁": "湿垃圾", "西瓜": "湿垃圾", "香蕉": "湿垃圾", "梨": "湿垃圾", "木瓜": "湿垃圾", "柠檬": "湿垃圾", "火龙果": "湿垃圾", "橙子": "湿垃圾", "草莓": "湿垃圾", "黄瓜": "湿垃圾", "槟榔": "湿垃圾", "柚子": "湿垃圾", "栗子": "湿垃圾", "樱桃": "湿垃圾", "菱角": "湿垃圾", "芒果": "湿垃圾", "凤梨": "湿垃圾", "菠萝": "湿垃圾", "桂圆": "湿垃圾", "葡萄": "湿垃圾", "桃子": "湿垃圾", "开心果": "湿垃圾", "猕猴桃": "湿垃圾", "剩饭": "湿垃圾", "瓜子壳": "湿垃圾", "茶叶渣": "湿垃圾", "中药渣": "湿垃圾", "蛋壳": "湿垃圾", "螃蟹壳": "湿垃圾", "虾壳": "湿垃圾", "鱼鳞": "湿垃圾", "蔬菜": "湿垃圾", "瓜果": "湿垃圾", "米饭": "湿垃圾", "过期食品": "湿垃圾", "金鱼": "湿垃圾", "鱼类": "湿垃圾", "椰子肉": "湿垃圾", "山竹皮": "湿垃圾", "烂苹果": "湿垃圾", "开心果壳": "湿垃圾", "奶油蛋糕": "湿垃圾", "鱼肉": "湿垃圾", "枇杷叶": "湿垃圾", "桂圆干": "湿垃圾", "杏": "湿垃圾", "过期糕点": "湿垃圾", "石榴皮": "湿垃圾", "肉": "湿垃圾", "无花果壳": "湿垃圾", "菜": "湿垃圾", "鸡头": "湿垃圾", "蓝莓干": "湿垃圾", "腐烂蔬菜": "湿垃圾", "龙眼壳": "湿垃圾", "烂香蕉": "湿垃圾", "鸭": "湿垃圾", "山竹": "湿垃圾", "奶酪": "湿垃圾", "山楂片": "湿垃圾", "鱼内脏": "湿垃圾", "瓜": "湿垃圾", "火锅调料": "湿垃圾", "鱼": "湿垃圾", "风味蛋糕": "湿垃圾", "山竹壳": "湿垃圾", "枣": "湿垃圾", "鹅骨头": "湿垃圾", "小核桃仁": "湿垃圾", "葡萄干": "湿垃圾", "死老鼠": "湿垃圾", "蛋糕": "湿垃圾", "动物内脏": "湿垃圾", "乳制品": "湿垃圾", "花": "湿垃圾", "瓜果蔬菜": "湿垃圾", "葡萄皮": "湿垃圾", "鸡鸭骨头": "湿垃圾", "草": "湿垃圾", "泡面调料": "湿垃圾", "鸡": "湿垃圾", "冲泡饮料": "湿垃圾", "骨头渣": "湿垃圾", "家禽内脏": "湿垃圾", "苹果核": "湿垃圾", "香蕉干": "湿垃圾", "电磁炉": "电器电子产品", "烤箱": "电器电子产品", "微波炉": "电器电子产品", "净水器": "电器电子产品", "加湿器": "电器电子产品", "除湿机": "电器电子产品", "空调": "电器电子产品", "冰箱": "电器电子产品", "洗衣机": "电器电子产品", "冰柜": "电器电子产品", "抽油烟机": "电器电子产品", "手机": "电器电子产品", "平板电脑": "电器电子产品", "摄像头": "电器电子产品", "游戏机": "电器电子产品", "耳机": "电器电子产品", "电热水器": "电器电子产品", "血压计": "电器电子产品", "电热水壶": "电器电子产品", "冷暖气机": "电器电子产品", "照相机": "电器电子产品", "落地电风扇": "电器电子产品", "太阳能热水器": "电器电子产品", "手持电风扇": "电器电子产品", "电子温度计": "电器电子产品", "电脑机箱": "电器电子产品", "行李箱": "大件垃圾, 请询问物业如何投放", "陶瓷杯": "干垃圾", "碎陶瓷": "干垃圾", "陶瓷刀": "干垃圾", "尘土": "干垃圾", "口香糖": "干垃圾", "榴莲壳": "干垃圾", "椰子壳": "干垃圾", "榴莲": "干垃圾", "拖把": "干垃圾", "贝壳": "干垃圾", "纸巾": "干垃圾", "卫生纸": "干垃圾", "纸尿裤": "干垃圾", "颜料": "干垃圾", "荧光棒": "干垃圾", "镜子": "干垃圾", "毛巾": "干垃圾", "袜子": "干垃圾", "方便面袋": "干垃圾", "吸管": "干垃圾", "一次性杯子": "干垃圾", "雨衣": "干垃圾", "百洁布": "干垃圾", "洗碗布": "干垃圾", "锡纸": "干垃圾", "保鲜膜": "干垃圾", "打火机": "干垃圾", "雨刮器": "干垃圾", "牙膏壳": "干垃圾", "木头铅笔": "干垃圾", "甘蔗皮": "干垃圾", "厨房用纸": "干垃圾", "污损旧衣服": "干垃圾", "线": "干垃圾", "纸质一次性杯子": "干垃圾", "乳胶手套": "干垃圾", "大骨头": "干垃圾", "衣服吊牌": "干垃圾", "衣物干燥剂": "干垃圾", "扫把": "干垃圾", "榛子壳": "干垃圾", "胶带": "干垃圾", "碧根果壳": "干垃圾", "肥皂": "干垃圾", "调料包装袋": "干垃圾", "牙膏皮": "干垃圾", "可降解垃圾袋": "干垃圾", "奶茶杯": "干垃圾", "塑料奶茶杯": "干垃圾", "茶壶碎片": "干垃圾", "核桃壳": "干垃圾", "软木塞": "干垃圾", "废旧抹布": "干垃圾", "厨房垃圾袋": "干垃圾", "生日蜡烛": "干垃圾", "火柴": "干垃圾", "木塞": "干垃圾", "玻璃胶带": "干垃圾", "滤水壶滤芯": "干垃圾", "牛奶瓶吸管": "干垃圾", "塑料打火机": "干垃圾", "肮脏塑料袋": "干垃圾", "蜡烛": "干垃圾", "废旧牙刷": "干垃圾", "乌龟壳": "干垃圾", "化妆品包装袋": "干垃圾", "搅拌勺": "干垃圾", "牙膏软管": "干垃圾", "旧浴巾": "干垃圾", "塑料袋": "干垃圾", "花盆": "干垃圾", "一次性筷子": "干垃圾", "橡胶手套": "干垃圾", "坏钢笔": "干垃圾", "湿纸巾": "干垃圾", "指甲": "干垃圾", "笔": "干垃圾", "钢笔": "干垃圾", "厕纸": "干垃圾", "洗碗手套": "干垃圾", "一次性餐具": "干垃圾", "大核桃壳": "干垃圾", "胶带纸": "干垃圾", "垃圾袋": "干垃圾", "搅拌棒": "干垃圾", "彩色铅笔": "干垃圾", "毛毯": "可回收物", "酒瓶": "可回收物", "玻璃杯": "可回收物", "剪刀": "可回收物", "刀片": "可回收物", "金属工具": "可回收物", "窗帘": "可回收物", "布包": "可回收物", "领带": "可回收物", "报纸": "可回收物", "宣传单": "可回收物", "包装纸盒": "可回收物", "牛奶盒": "可回收物", "泡沫板": "可回收物", "纸": "可回收物", "废塑料": "可回收物", "废金属": "可回收物", "插头": "可回收物", "塑料护肤品空瓶": "可回收物", "食用油桶": "可回收物", "木制品": "可回收物", "矿泉水瓶": "可回收物", "塑料制品": "可回收物", "纸质购物袋": "可回收物", "护肤品塑料空瓶": "可回收物", "啤酒瓶": "可回收物", "门锁": "可回收物", "玻璃制品": "可回收物", "玻璃": "可回收物", "纸塑铝复合包装": "可回收物", "金属": "可回收物", "铁": "可回收物", "洗发露玻璃空瓶": "可回收物", "衣服": "可回收物", "金属厨具": "可回收物", "玻璃罐": "可回收物", "塑料": "可回收物", "啤酒瓶盖": "可回收物", "皮带": "可回收物", "金属锅": "可回收物", "布": "可回收物", "饮料玻璃瓶": "可回收物", "饮料塑料瓶": "可回收物", "塑料瓶盖": "可回收物", "洗发露塑料空瓶": "可回收物", "电脑包": "可回收物", "塑料筷子": "可回收物", "木筷子": "可回收物", "密胺餐具": "可回收物", "金属制容器": "可回收物", "护肤品玻璃空瓶": "可回收物", "塑料擀面杖": "可回收物", "纺织物": "可回收物", "纺织布": "可回收物", "化妆品玻璃空瓶": "可回收物", "机械表": "可回收物", "木质擀面杖": "可回收物", "玻璃餐具": "可回收物", "信封": "可回收物", "钥匙": "可回收物", "塑料杯": "可回收物", "充电器": "可回收物", "化纤衣物": "可回收物", "杂志": "可回收物", "化妆品塑料空瓶": "可回收物", "衣物": "可回收物", "沐浴露玻璃空瓶": "可回收物", "洗洁精空瓶": "可回收物", "金属汤匙": "可回收物", "沐浴露塑料空瓶": "可回收物", "塑料充气沙发": "可回收物", "油漆": "有害垃圾", "废药品": "有害垃圾", "杀虫剂": "有害垃圾", "节能灯泡": "有害垃圾", "荧光灯管": "有害垃圾", "水银温度计": "有害垃圾", "水银体温计": "有害垃圾", "可充电电池": "有害垃圾", "纽扣电池": "有害垃圾", "干电池": "有害垃圾", "电池": "有害垃圾", "废油漆": "有害垃圾", "废胶片": "有害垃圾", "蓄电池": "有害垃圾", "杀虫剂瓶": "有害垃圾", "含汞血压计": "有害垃圾", "相片": "有害垃圾", "灯泡": "有害垃圾", "消毒药片": "有害垃圾", "过期药品": "有害垃圾", "水银血压计": "有害垃圾", "老鼠药": "有害垃圾", "有机溶剂": "有害垃圾", "农药瓶": "有害垃圾", "荧光灯": "有害垃圾", "药品": "有害垃圾", "相片纸": "有害垃圾", "含汞温度计": "有害垃圾", "有害垃圾": "有害垃圾", "照相机电池": "有害垃圾", "胶卷": "有害垃圾", "锂电池": "有害垃圾", "有机溶剂类包装物": "有害垃圾", "有机溶剂包装": "有害垃圾", "白炽灯泡": "有害垃圾", "灯管": "有害垃圾", "杀虫剂罐": "有害垃圾", "相片底片": "有害垃圾"} -------------------------------------------------------------------------------- /ansdata/name_list.json: -------------------------------------------------------------------------------- 1 | ["荔枝", "塑料打火机", "陶瓷刀", "小核桃仁", "纺织物", "大件垃圾", "废旧牙刷", "乳制品", "牙膏壳", "塑料护肤品空瓶", "饮料塑料瓶", "废旧抹布", "生日蜡烛", "打火机", "床垫", "荧光灯管", "花盆", "菜", "金属厨具", "蓝莓干", "相片纸", "橱柜", "含汞血压计", "洗碗手套", "护肤品塑料空瓶", "肉", "扫把", "过期药品", "洗发露玻璃空瓶", "瓦片", "剪刀", "搅拌棒", "木质擀面杖", "乌龟壳", "沙发", "塑料擀面杖", "杂志", "枣", "冲泡饮料", "鱼肉", "门锁", "铁", "瓜", "相片", "电脑机箱", "塑料杯", "开心果壳", "旧浴巾", "牛奶瓶吸管", "沐浴露塑料空瓶", "行李箱", "牙膏软管", "木头铅笔", "玻璃餐具", "软木塞", "鸡头", "电子温度计", "灯泡", "腐烂蔬菜", "落地电风扇", "橡胶手套", "彩色铅笔", "水银温度计", "消毒药片", "杏", "一次性杯子", "调料包装袋", "纸", "木制品", "塑料瓶盖", "玻璃", "啤酒瓶", "相片底片", "含汞温度计", "冷暖气机", "奶酪", "啤酒瓶盖", "信封", "杀虫剂瓶", "电热水壶", "杀虫剂", "化妆品玻璃空瓶", "太阳能热水器", "化纤衣物", "玻璃制品", "金属汤匙", "密胺餐具", "木塞", "杀虫剂罐", "泡面调料", "洗发露塑料空瓶", "乳胶手套", "线", "牙膏皮", "纸质一次性杯子", "血压计", "玻璃罐", "柜子", "木筷子", "洗洁精空瓶", "大骨头", "厨房垃圾袋", "旧橱柜", "指甲", "鹅骨头", "猕猴桃", "瓜果蔬菜", "无花果壳", "有机溶剂包装", "纸巾", "化妆品包装袋", "核桃壳", "荧光灯", "白炽灯泡", "椰子肉", "金属锅", "电热水器", "钥匙", "过期糕点", "老鼠药", "污损旧衣服", "可降解垃圾袋", "纸质购物袋", "废金属", "葡萄干", "胶带", "火锅调料", "水银血压计", "化妆品塑料空瓶", "蛋糕", "肥皂", "一次性筷子", "死老鼠", "搅拌勺", "金属制容器", "塑料袋", "塑料", "胶卷", "山竹皮", "蜡烛", "湿纸巾", "衣服吊牌", "蔬菜", "苹果核", "骨头渣", "有机溶剂类包装物", "动物内脏", "坏钢笔", "玻璃胶带", "金属", "碎陶瓷", "有机溶剂", "窗户", "风味蛋糕", "火柴", "衣物干燥剂", "西瓜", "烂苹果", "电脑桌", "大核桃壳", "玻璃杯", "鸭", "鱼类", "奶茶杯", "烂香蕉", "香蕉", "食用油桶", "垃圾袋", "一次性餐具", "鱼内脏", "废药品", "桂圆", "废塑料", "布", "饮料玻璃瓶", "矿泉水瓶", "钢笔", "石榴皮", "榛子壳", "床", "家禽内脏", "塑料充气沙发", "滤水壶滤芯", "苹果", "照相机电池", "锂电池", "农药瓶", "厕纸", "山楂片", "花", "蓄电池", "鸡鸭骨头", "纺织布", "皮带", "衣服", "衣物", "草", "节能灯泡", "鸡", "笔", "葡萄", "甘蔗皮", "药品", "塑料筷子", "桌子", "机械表", "茶壶碎片", "葡萄皮", "龙眼壳", "陶瓷杯", "奶油蛋糕", "塑料奶茶杯", "手持电风扇", "门", "厨房用纸", "护肤品玻璃空瓶", "胶带纸", "有害垃圾", "灯管", "沐浴露玻璃空瓶", "山竹壳", "电脑包", "香蕉干", "山竹", "枇杷叶", "瓜果", "照相机", "肮脏塑料袋", "椰子壳", "电池", "纸塑铝复合包装", "充电器", "塑料制品", "鱼", "桂圆干", "碧根果壳", "茶几", "干电池"] -------------------------------------------------------------------------------- /ansdata/name_list.txt: -------------------------------------------------------------------------------- 1 | '电热水器', '太阳能热水器','行李箱','行李箱','行李箱','行李箱','陶瓷杯', '碎陶瓷', '陶瓷刀','行李箱','旧橱柜', '橱柜','沙发', '塑料充气沙发','茶几','桌子','床','床垫', '床','床','瓦片','西瓜', '瓜','杏','枣','榛子壳','葡萄皮', '葡萄干', '葡萄','山竹皮', '山竹壳', '山竹','鸡', '鸡头','烂苹果', '烂香蕉', '苹果核', '香蕉', '香蕉干', '苹果','杏','山楂片','草','大核桃壳', '小核桃仁', '核桃壳','石榴皮','甘蔗皮','无花果壳', '花','荔枝','椰子壳', '椰子肉','烂苹果', '苹果核', '苹果','龙眼壳', '桂圆干', '桂圆','山竹皮', '山竹壳', '山竹','猕猴桃','枇杷叶','荔枝','杏','葡萄干', '葡萄皮', '葡萄','椰子壳', '椰子肉','核桃壳', '小核桃仁', '大核桃壳','猕猴桃','榛子壳','石榴皮','苹果核', '苹果', '烂苹果','蓝莓干','枣','杏','草','香蕉', '苹果', '烂苹果', '香蕉干', '烂香蕉', '苹果核','龙眼壳','榛子壳','甘蔗皮','山楂片','瓜','鸡头', '鸡','西瓜', '瓜','枣','葡萄','无花果壳', '花','山竹皮', '山竹', '山竹壳','衣物干燥剂', '衣物', '化纤衣物','布', '废旧抹布','塑料袋', '肮脏塑料袋', '塑料','塑料制品', '塑料','相片', '相片底片', '相片纸','胶卷','化妆品包装袋', '化妆品塑料空瓶', '化妆品玻璃空瓶','消毒药片','农药瓶','金属制容器','含汞血压计', '水银血压计', '血压计','锂电池', '废旧抹布', '干电池', '废旧牙刷', '电池','蓄电池', '电池','荧光灯管', '荧光灯', '灯管','含汞温度计', '水银温度计', '电子温度计','含汞血压计', '水银血压计', '血压计','废药品', '药品', '有机溶剂类包装物', '过期药品','有机溶剂包装', '有机溶剂类包装物', '有机溶剂','杀虫剂', '杀虫剂瓶', '杀虫剂罐','有机溶剂类包装物','菜', '腐烂蔬菜', '蔬菜','开心果壳', '碧根果壳', '无花果壳','鹅骨头', '骨头渣', '大骨头','鸡', '鸡鸭骨头', '动物内脏', '鸭', '鱼内脏', '家禽内脏','鱼类', '动物内脏', '鱼', '鱼内脏', '家禽内脏','乳制品', '木制品', '玻璃制品','过期糕点','瓜果蔬菜', '有害垃圾', '瓜', '大件垃圾', '腐烂蔬菜', '垃圾袋', '蔬菜', '菜', '瓜果','家禽内脏', '动物内脏', '鱼内脏','肉', '鱼', '鱼肉','鱼内脏', '家禽内脏', '动物内脏','电脑机箱', '电脑桌', '电脑包','照相机电池', '照相机','调料包装袋', '火锅调料', '泡面调料','玻璃','玻璃', '玻璃罐', '玻璃杯', '窗户','玻璃','玻璃','金属', '废金属', '金属锅','饮料玻璃瓶', '冲泡饮料', '饮料塑料瓶','菜','金属','金属', '废金属', '金属锅','金属', '废金属', '金属锅','金属', '废金属', '金属锅','钥匙', '金属', '废金属', '金属锅','指甲','铁','铁','铁','衣服', '衣服吊牌', '污损旧衣服','床','旧浴巾','乳胶手套', '洗碗手套', '橡胶手套','杂志','纸','纸','纸','塑料制品', '塑料','风味蛋糕', '奶油蛋糕', '蛋糕','蔬菜', '腐烂蔬菜', '菜', '金属制容器','有机溶剂类包装物','牙膏软管', '牙膏壳', '牙膏皮','纸质购物袋','塑料杯', '废塑料', '塑料','塑料杯', '废塑料', '塑料','花盆', '花', '塑料','塑料杯', '扫把', '废塑料', '塑料','塑料杯', '废塑料', '塑料','牛奶瓶吸管','矿泉水瓶','饮料玻璃瓶', '冲泡饮料', '饮料塑料瓶','食用油桶','洗洁精空瓶','洗发露玻璃空瓶', '洗发露塑料空瓶','沐浴露塑料空瓶', '沐浴露玻璃空瓶','塑料瓶盖', '塑料护肤品空瓶', '护肤品塑料空瓶', '塑料', '护肤品玻璃空瓶', '饮料塑料瓶','有机溶剂类包装物','纺织物', '废旧抹布', '废旧牙刷', '纺织布','充电器','玻璃', '玻璃罐', '玻璃杯','纸塑铝复合包装','垃圾袋', '厨房垃圾袋', '可降解垃圾袋','厕纸', '纸','纸巾', '湿纸巾', '纸','肥皂','笔', '木头铅笔', '彩色铅笔','节能灯泡', '白炽灯泡', '灯泡','生日蜡烛', '蜡烛','坏钢笔', '笔', '钢笔','牙膏皮', '牙膏壳', '牙膏软管','塑料打火机', '打火机','电池', '锂电池', '干电池','垃圾袋', '厨房垃圾袋', '可降解垃圾袋','火柴','胶带纸', '胶带', '玻璃胶带','牙膏皮', '牙膏壳', '牙膏软管','剪刀','信封','塑料奶茶杯', '奶茶杯','厨房用纸', '厨房垃圾袋','橡胶手套', '洗碗手套', '乳胶手套','木塞', '软木塞','滤水壶滤芯', '电热水壶','搅拌勺', '搅拌棒','金属锅', '金属', '啤酒瓶', '啤酒瓶盖', '废金属','金属厨具','肉','木质擀面杖', '塑料擀面杖','布','一次性杯子', '纸质一次性杯子','金属汤匙','洗洁精空瓶','厨房用纸', '纸', '纸巾', '湿纸巾', '厨房垃圾袋','厨房用纸', '厨房垃圾袋','木筷子', '塑料筷子', '一次性筷子','玻璃餐具', '密胺餐具', '一次性餐具','茶壶碎片','金属汤匙','玻璃制品', '玻璃','奶酪','乌龟壳','死老鼠', '老鼠药','落地电风扇', '皮带', '手持电风扇','行李箱','玻璃','线','机械表','门', '门锁','门','花','冷暖气机','柜子','柜子','瓦片','电脑桌','橱柜', '旧橱柜','桌子','橱柜', '旧橱柜','行李箱','窗户','床垫', '床','大件垃圾','柜子','茶几','化妆品玻璃空瓶', '化妆品包装袋', '化妆品塑料空瓶','纸','水果脆', '水果茶', '水果干','有害垃圾', '大件垃圾', '垃圾袋','有害垃圾', '大件垃圾', '垃圾袋','酒精棉球', '酒精棉', '酒精棉片','酒精棉球', '酒精棉', '酒精棉片','碎陶瓷', '陶瓷刀', '陶瓷杯','肉', '黑猪肉', '猪肉','肉', '黑猪肉', '猪肉','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','矿泉水瓶','矿泉水瓶','饮料塑料瓶', '塑料', '塑料瓶盖','肉','碎陶瓷', '陶瓷刀', '陶瓷杯','肉','数字音乐播放器','大核桃壳', '核桃壳', '小核桃仁','动物毛发', '动物内脏','骨头渣', '大骨头', '鹅骨头','肉', '黑猪肉', '猪肉','桌子','桌子','有害垃圾', '大件垃圾', '垃圾袋','狗屎纸','饮料塑料瓶', '塑料', '塑料瓶盖','碎陶瓷', '陶瓷刀', '陶瓷杯','塑料奶茶杯', '奶茶纸杯', '奶茶杯','狗屎纸','苹果核', '苹果', '大件垃圾', '垃圾袋', '烂苹果', '有害垃圾','烂苹果', '苹果核', '苹果','饮料塑料瓶', '塑料', '塑料瓶盖','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','狗屎纸','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '鱼刺', '鱼', '大件垃圾', '垃圾袋','电脑桌', '电脑包', '电脑机箱','电脑桌', '电脑包', '电脑机箱','电脑桌', '电脑包', '电脑机箱','电脑桌','电脑桌','桌子','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','冲泡饮料', '饮料玻璃瓶', '饮料塑料瓶','水银', '电池','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','湿巾纸', '湿巾纸包装','肉','橡皮擦','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','咸鸭蛋壳', '鸭','碎陶瓷', '陶瓷刀', '陶瓷杯','可乐空瓶', '可乐空罐', '可口可乐纸杯','塑料奶茶杯', '奶茶纸杯', '奶茶杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','手机', '苹果','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','骨头渣', '大骨头', '鹅骨头','龙虾片', '龙虾壳', '龙虾','苹果','帐篷','帐篷','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','骨头渣', '大骨头', '鹅骨头','碎陶瓷', '陶瓷刀', '陶瓷杯','装饰石头', '石头','骨头渣', '大骨头', '鹅骨头','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','一次性杯子', '纸质一次性杯子','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','菜', '韭菜','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','湿巾纸', '湿巾纸包装','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','奶茶纸杯', '咖啡纸杯', '纸','瓷砖','玻璃杯', '玻璃罐', '大件垃圾', '垃圾袋', '玻璃', '有害垃圾','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','酸奶利乐包装盒','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','金属包装盒', '酸奶利乐包装盒', '饮料利乐包装盒','可降解塑料袋', '可降解垃圾袋','泡沫餐盒', '泡沫板', '泡沫箱','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','门','一次性杯子', '纸质一次性杯子','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','落地电风扇', '手持电风扇', '有害垃圾', '大件垃圾', '垃圾袋','落地电风扇', '手持电风扇','碎陶瓷', '陶瓷刀', '陶瓷杯','塑料', '塑料杯', '废塑料','碎陶瓷', '陶瓷刀', '陶瓷杯','农药瓶','电脑桌', '电脑包', '电脑机箱','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','铁','酸奶利乐包装盒','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','有害垃圾', '大件垃圾', '垃圾袋','有害垃圾', '大件垃圾', '垃圾袋','有害垃圾', '大件垃圾', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','有害垃圾', '大件垃圾', '垃圾袋','外卖餐盒', '有害垃圾', '大件垃圾', '垃圾袋','酸奶利乐包装盒', '有害垃圾', '大件垃圾', '垃圾袋','装饰石头', '石头','石头', '装饰石头', '装饰石','饮料塑料瓶', '塑料', '塑料瓶盖','有害垃圾', '大件垃圾', '垃圾袋','菜', '剩饭剩菜','残渣剩饭', '菜', '剩饭', '剩饭剩菜','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','菜', '菠菜','碎陶瓷', '陶瓷刀', '陶瓷杯','照相机电池', '照相机','碎陶瓷', '陶瓷刀', '陶瓷杯','餐巾纸', '餐巾纸包装', '餐巾纸盒','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','书包','书包','书包','书包','书包','书包','书包','书包','过期零食', '大件垃圾', '有害垃圾', '零食包装袋', '垃圾袋','过期零食', '零食包装袋','过期茶叶', '过期零食', '过期饼干', '零食包装袋', '过期药','果皮', '芒果皮', '苹果皮','过期牛骂人','口水果皮', '过期口水', '旧漱口水','除湿机器人', '扫地机器人', '电视机器人','碎陶瓷', '陶瓷刀', '陶瓷杯','纸质包装', '纸质购物', '纸','纸质包装', '纸质购物', '纸','纸质包装', '纸质购物', '纸','碎陶瓷', '陶瓷刀', '陶瓷杯','米', '玉米', '玉米棒','米', '玉米', '玉米棒','人工眼药水', '人工剃须刀','碎陶瓷', '陶瓷刀', '陶瓷杯','残渣剩菜', '菜', '残渣剩饭', '瓜子壳什么', '吃饭剩菜', ',垃圾袋', '电风扇什么', '!垃圾袋', '剩饭剩菜', '打火机什么', '垃圾袋', '剩饭',',垃圾袋', '!垃圾袋', '垃圾袋','碎陶瓷', '陶瓷刀', '陶瓷杯','番茄酱油', '玻璃瓶酱油', '酱油空瓶','易拉罐', ' 易拉罐', 'v易拉罐','易拉罐', ' 易拉罐', 'v易拉罐','易拉罐', ' 易拉罐', 'v易拉罐','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','测试糖尿病一次性针', '一次性测试', '测试血糖试纸','碎陶瓷', '陶瓷刀', '陶瓷杯','鸡蛋', '臭鸡蛋', '鸡','碎陶瓷', '陶瓷刀', '陶瓷杯','中药渣', '中药材', ' 中药渣','中药渣', '中药材', ' 中药渣','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','馒头保鲜袋', '馒头塑料袋', '馒头','馒头保鲜袋', '馒头塑料袋', '馒头','碎陶瓷', '陶瓷刀', '陶瓷杯','挂面外包装', '挂面包装塑料纸','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','中药渣', '中药材', ' 中药渣','次性筷子', '旧木筷子', '木筷子','笔记本键盘', '笔记本键盘膜', '键盘','笔记本键盘', '笔记本键盘膜', '键盘','你好西瓜皮', '你好天猫充电宝', '你你好三文鱼','你好天猫充电宝', ' 西瓜皮', '西瓜皮', '$西瓜皮', '你好西瓜皮', '你你好三文鱼','碎陶瓷', '陶瓷刀', '陶瓷杯','胶食品包装', '非食品包装', '废食品包装','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','$奶茶杯', '奶茶杯', 'c奶茶杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','水笔芯', '笔', '笔芯','水笔芯', '笔', '笔芯','饮料瓶盖', '空饮料瓶盖', '冲泡饮料瓶','涂指甲油的指甲盖', '指甲', '脚指甲盖','涂指甲油的指甲盖', '指甲', '脚指甲盖','就想要个女朋友-羽毛球爱好者', '拿着湿纸巾的女朋友', '女朋友用过的验孕棒','$奶茶杯', '奶茶杯', 'c奶茶杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','笔记本屏幕', '电脑包男', '电脑包', '屏幕西瓜皮', '电脑桌', '电视机屏幕','笔记本屏幕', '电脑包男', '电脑包', '屏幕西瓜皮', '电脑桌', '电视机屏幕','汽车活性炭', '汽车充电器', '汽车记录仪','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','包菜叶子', '芭蕉叶子', '白菜叶子','包菜叶子', '芭蕉叶子', '白菜叶子','碎陶瓷', '陶瓷刀', '陶瓷杯','创可贴*', '比创可贴', '创可贴','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','狗尿布', '布', '尿布','狗尿布', '布', '尿布','带死人的尿不湿','杯子包装', '玻璃杯子', '保温杯子','s包装盒', '包装袋', '杯子包装', '玻璃杯子', ':包装盒', '保温杯子','保温杯。', '啊保温杯', '保温杯杯','书籍塑封外包装', '被油污污染的书籍', '书籍快递包装','书籍塑封外包装', '包装塑封膜', '书籍快递包装', '塑封箱带', '被油污污染的书籍', '饮料塑封','s包装盒', '包装袋', '包装塑封膜', ':包装盒', '塑封箱带', '饮料塑封',':包装盒', 'u包装盒', 's包装盒','网线', '网线电视机', '线','碎陶瓷', '陶瓷刀', '陶瓷杯','笔记本固态硬盘', '固态硬盘笔记本','笔记本显卡', '显卡', '笔记本显卡升级',',垃圾袋', '!垃圾袋', '垃圾袋','月饼包装盒', '月饼', '鲜肉月饼','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','烂苹果', '苹果核', '苹果','烂苹果', '苹果核', '苹果','碎陶瓷', '陶瓷刀', '陶瓷杯','残渣剩菜', '菜', '残渣剩饭', '保鲜袋属于', '瓜子壳什么', '保鲜膜属于', '吃饭剩菜', ',垃圾袋', '电风扇什么', '保温棉属于', '!垃圾袋', '剩饭剩菜', '打火机什么', '垃圾袋', '剩饭','1锂电池', '保鲜袋属于', '蓄电池', '瓜子壳什么', '保鲜膜属于', ',垃圾袋', '电风扇什么', '保温棉属于', '!垃圾袋', '打火机什么', '垃圾袋', '锂电池','瓜子壳什么', '保鲜袋属于', '保鲜膜属于', ',垃圾袋', '电风扇什么', '保温棉属于', '!垃圾袋', '打火机什么', '垃圾袋','香蕉皮阿斯顿发生','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','红烧肉骨头', '肉', '瓜子壳肉骨头','碎陶瓷', '陶瓷刀', '陶瓷杯','碎陶瓷', '陶瓷刀', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','废塑料薄膜代', '废塑料薄膜', '包装塑料薄膜','打印纸张', '纸', '废损纸张','骨头渣', '鹅骨头', '大骨头','骨头渣', '鹅骨头', '大骨头','陶瓷刀', '碎陶瓷', '陶瓷杯','0卫生巾', ' 卫生巾', '卫生巾','移动硬盘', '笔记本硬盘', '自动硬盘','陶瓷刀', '碎陶瓷', '陶瓷杯','9香蕉皮', ' 香蕉皮', '香蕉皮','!垃圾袋', '垃圾袋', ',垃圾袋','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','超级漂亮的美女的头发', '美女的大衣柜', '一次性筷子女的','薯片', '空薯片罐', '薯片罐','薯片', '空薯片罐', '薯片罐','薯片', '空薯片罐', '薯片罐','你是鱼骨头', '你是小龙虾', '你是西瓜皮','你好三文鱼', '你好西瓜皮', '你你好三文鱼','废物饲料', '梭子蟹废物', '废物废药品','陶瓷刀', '碎陶瓷', '陶瓷杯','干净的假发', '假发','牛奶盒', 'l牛奶盒', ' 牛奶盒','除湿盒子', '打包盒子', '包装盒子','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','瓜子壳什么', '电风扇什么', '烂苹果', '垃圾袋', '!垃圾袋', '苹果', '苹果核', '打火机什么', ',垃圾袋','陶瓷刀', '碎陶瓷', '陶瓷杯','陶瓷刀', '碎陶瓷', '陶瓷杯','花露水平', '爽肤水平', '矿泉水平','废药瓶子', '玻璃瓶子', '甲油瓶子', -------------------------------------------------------------------------------- /ansdata/name_list_0.txt: -------------------------------------------------------------------------------- 1 | '电热水器', '太阳能热水器','行李箱','行李箱','行李箱','行李箱','陶瓷杯', '碎陶瓷', '陶瓷刀','行李箱','旧橱柜', '橱柜','沙发', '塑料充气沙发','茶几','桌子','床','床垫', '床','床','瓦片','西瓜', '瓜','杏','枣','榛子壳','葡萄皮', '葡萄干', '葡萄','山竹皮', '山竹壳', '山竹','鸡', '鸡头','烂苹果', '烂香蕉', '苹果核', '香蕉', '香蕉干', '苹果','杏','山楂片','草','大核桃壳', '小核桃仁', '核桃壳','石榴皮','甘蔗皮','无花果壳', '花','荔枝','椰子壳', '椰子肉','烂苹果', '苹果核', '苹果','龙眼壳', '桂圆干', '桂圆','山竹皮', '山竹壳', '山竹','猕猴桃','枇杷叶','荔枝','杏','葡萄干', '葡萄皮', '葡萄','椰子壳', '椰子肉','核桃壳', '小核桃仁', '大核桃壳','猕猴桃','榛子壳','石榴皮','苹果核', '苹果', '烂苹果','蓝莓干','枣','杏','草','香蕉', '苹果', '烂苹果', '香蕉干', '烂香蕉', '苹果核','龙眼壳','榛子壳','甘蔗皮','山楂片','瓜','鸡头', '鸡','西瓜', '瓜','枣','葡萄','无花果壳', '花','山竹皮', '山竹', '山竹壳','衣物干燥剂', '衣物', '化纤衣物','布', '废旧抹布','塑料袋', '肮脏塑料袋', '塑料','塑料制品', '塑料','相片', '相片底片', '相片纸','胶卷','化妆品包装袋', '化妆品塑料空瓶', '化妆品玻璃空瓶','消毒药片','农药瓶','金属制容器','含汞血压计', '水银血压计', '血压计','锂电池', '废旧抹布', '干电池', '废旧牙刷', '电池','蓄电池', '电池','荧光灯管', '荧光灯', '灯管','含汞温度计', '水银温度计', '电子温度计','含汞血压计', '水银血压计', '血压计','废药品', '药品', '有机溶剂类包装物', '过期药品','有机溶剂包装', '有机溶剂类包装物', '有机溶剂','杀虫剂', '杀虫剂瓶', '杀虫剂罐','有机溶剂类包装物','菜', '腐烂蔬菜', '蔬菜','开心果壳', '碧根果壳', '无花果壳','鹅骨头', '骨头渣', '大骨头','鸡', '鸡鸭骨头', '动物内脏', '鸭', '鱼内脏', '家禽内脏','鱼类', '动物内脏', '鱼', '鱼内脏', '家禽内脏','乳制品', '木制品', '玻璃制品','过期糕点','瓜果蔬菜', '有害垃圾', '瓜', '大件垃圾', '腐烂蔬菜', '垃圾袋', '蔬菜', '菜', '瓜果','家禽内脏', '动物内脏', '鱼内脏','肉', '鱼', '鱼肉','鱼内脏', '家禽内脏', '动物内脏','电脑机箱', '电脑桌', '电脑包','照相机电池', '照相机','调料包装袋', '火锅调料', '泡面调料','玻璃','玻璃', '玻璃罐', '玻璃杯', '窗户','玻璃','玻璃','金属', '废金属', '金属锅','饮料玻璃瓶', '冲泡饮料', '饮料塑料瓶','菜','金属','金属', '废金属', '金属锅','金属', '废金属', '金属锅','金属', '废金属', '金属锅','钥匙', '金属', '废金属', '金属锅','指甲','铁','铁','铁','衣服', '衣服吊牌', '污损旧衣服','床','旧浴巾','乳胶手套', '洗碗手套', '橡胶手套','杂志','纸','纸','纸','塑料制品', '塑料','风味蛋糕', '奶油蛋糕', '蛋糕','蔬菜', '腐烂蔬菜', '菜', '金属制容器','有机溶剂类包装物','牙膏软管', '牙膏壳', '牙膏皮','纸质购物袋','塑料杯', '废塑料', '塑料','塑料杯', '废塑料', '塑料','花盆', '花', '塑料','塑料杯', '扫把', '废塑料', '塑料','塑料杯', '废塑料', '塑料','牛奶瓶吸管','矿泉水瓶','饮料玻璃瓶', '冲泡饮料', '饮料塑料瓶','食用油桶','洗洁精空瓶','洗发露玻璃空瓶', '洗发露塑料空瓶','沐浴露塑料空瓶', '沐浴露玻璃空瓶','塑料瓶盖', '塑料护肤品空瓶', '护肤品塑料空瓶', '塑料', '护肤品玻璃空瓶', '饮料塑料瓶','有机溶剂类包装物','纺织物', '废旧抹布', '废旧牙刷', '纺织布','充电器','玻璃', '玻璃罐', '玻璃杯','纸塑铝复合包装','垃圾袋', '厨房垃圾袋', '可降解垃圾袋','厕纸', '纸','纸巾', '湿纸巾', '纸','肥皂','笔', '木头铅笔', '彩色铅笔','节能灯泡', '白炽灯泡', '灯泡','生日蜡烛', '蜡烛','坏钢笔', '笔', '钢笔','牙膏皮', '牙膏壳', '牙膏软管','塑料打火机', '打火机','电池', '锂电池', '干电池','垃圾袋', '厨房垃圾袋', '可降解垃圾袋','火柴','胶带纸', '胶带', '玻璃胶带','牙膏皮', '牙膏壳', '牙膏软管','剪刀','信封','塑料奶茶杯', '奶茶杯','厨房用纸', '厨房垃圾袋','橡胶手套', '洗碗手套', '乳胶手套','木塞', '软木塞','滤水壶滤芯', '电热水壶','搅拌勺', '搅拌棒','金属锅', '金属', '啤酒瓶', '啤酒瓶盖', '废金属','金属厨具','肉','木质擀面杖', '塑料擀面杖','布','一次性杯子', '纸质一次性杯子','金属汤匙','洗洁精空瓶','厨房用纸', '纸', '纸巾', '湿纸巾', '厨房垃圾袋','厨房用纸', '厨房垃圾袋','木筷子', '塑料筷子', '一次性筷子','玻璃餐具', '密胺餐具', '一次性餐具','茶壶碎片','金属汤匙','玻璃制品', '玻璃','奶酪','乌龟壳','死老鼠', '老鼠药','落地电风扇', '皮带', '手持电风扇','行李箱','玻璃','线','机械表','门', '门锁','门','花','冷暖气机','柜子','柜子', -------------------------------------------------------------------------------- /get_more_data.py: -------------------------------------------------------------------------------- 1 | import re, json 2 | 3 | from trash import * 4 | 5 | # https://www.yuque.com/zhiwa/ideas/gty6wa 6 | # https://zh.speaklanguages.com/英语/词汇/厨房 7 | 8 | 9 | def to_word_list(words: str) -> list: 10 | s = words.replace(" "," ").replace('\n', ' ').replace('/', ' ').split(' ') 11 | res = re.findall("\d+|[a-zA-Z]+", fruit) # ['not', '404', 'found', '99'] 12 | things_list = [item for item in s if not item in res] 13 | return list(things_list) 14 | 15 | 16 | fruit = """Almond 杏仁 17 | Apple 苹果 18 | Apricot 杏子 19 | Arbutus 杨梅 20 | Avocado 南美梨 21 | Bagasse 甘蔗渣 22 | Banana 香蕉 23 | Bennet 水杨梅 24 | Bergamot 佛手柑 25 | Berry 桨果 26 | Betelnut 槟榔 27 | Bilberry 野桑果 28 | Bitter orange 苦酸橙 29 | Blackberry 刺梅 30 | Black brin 黑布林 31 | 黑布林 32 | Blueberry 越桔,蓝莓 33 | Bryony 野葡萄 34 | Bullace 野李子 35 | Bush fruit 丛生果 36 | Cantaloupe 美国甜瓜 37 | Carambola 杨桃 38 | Casaba 冬季甜瓜 39 | Cascara 鼠李 40 | Cherry 樱桃 41 | Cherry tomato 圣女果 42 | Chestnut 栗子 43 | Coconut 椰子 44 | Cocoa 可可果 45 | Codlin 未熟苹果 46 | Core 果心 47 | Cranberry 曼越桔 48 | Cucumber 黄瓜 49 | Cumquat 金桔 50 | Custard apple 番荔枝 51 | Damson 洋李子 52 | Date 枣子 53 | Date palm 枣椰子 54 | Dew 果露 55 | Durian 榴莲 56 | Fig 无花果 57 | Filbert 榛子 58 | 榛子filbert的图片 59 | Flat peach 蕃桃 60 | Foxnut 鸡头果 61 | Ginkgo 银杏 62 | Gooseberry 醋栗 63 | Grape 葡萄 64 | Grapefruit 葡萄柚子 65 | Guava 番石榴 66 | Haw 山楂 67 | Herbaceous fruit 草本果 68 | Hickory 山胡桃 69 | Honey-dew melon 哈蜜瓜 70 | Juicy peach 水蜜桃 71 | Kernel fruit 仁果 72 | Kiwifruit 奇异果 猕猴桃 73 | Lemon 柠檬 74 | Lichee 荔枝 75 | Longan 龙眼 桂圆 76 | Loquat 枇杷 77 | Lotus 莲子 78 | Mandarin 中国柑桔 79 | Mango 芒果 80 | Mangosteen 山竹果 81 | Marc 果渣 82 | Melon 黄香瓜 83 | Mini watermelon 小西瓜 84 | Nectarine 油桃 85 | Newton pippin 香蕉苹果 86 | Nucleus 核仁 87 | Olive 橄榄 88 | Orange 橙子 89 | Papaya 木瓜 90 | Peach 桃子 91 | Peanut 花生 92 | Pear 梨 93 | Persimmon 柿子 94 | Phoenix eye nut 凤眼果 95 | Pistachio 开心果 96 | Pitaya 火龙果 97 | Plum 梅子,李子 98 | Pomegranate 石榴 99 | Pomelo 柚子 100 | Quarenden 大红苹果 101 | Rambutan 红毛丹 102 | Raspberry 覆盆子 103 | Sapodilla 人参果 104 | 人参果 105 | Sapodilla plum 芝果 106 | Seedless watermelon 无籽西瓜 107 | Segment 片囊 108 | Shaddock 文旦 109 | Sorgo 芦栗 110 | Sorosis 桑果 111 | Strawberry 草莓 112 | Sugarcane 甘蔗 113 | Sultana 苏丹葡萄 114 | Sweet acorn 甜栎子 115 | Syrup shaddock 汁柚 116 | Tangerine 蜜柑桔 117 | Tangor 广柑 118 | Teazle fruit 刺果 119 | Tough pear 木梨 120 | Vermillion orange 朱砂桔 121 | Walnut 核桃 122 | 山核桃 凤梨 菠萝 123 | Warden 冬梨 124 | Water Caltrop 菱角 125 | Waterchestnut 马蹄 荸荠 126 | Watermelon 西瓜 127 | White shaddock 白柚 128 | Wild peach 毛桃""" 129 | 130 | # 水果类 131 | # s = fruit.replace('\n',' ').split(' ') 132 | # res = re.findall("\d+|[a-zA-Z]+", fruit) # ['not', '404', 'found', '99'] 133 | # fruit_list = [item for item in s if not item in res] 134 | # sort_list(fruit_list) 135 | 136 | daily_use = """ 137 | battery 电池 138 | candle 蜡烛 139 | cotton 棉 140 | envelopes 信封 141 | firelighters 生火料 142 | fuse 保险丝 143 | glue 胶水 144 | light bulb 灯泡 145 | lighter 打火机 146 | matches 火柴 147 | needle 针 148 | safety pin 安全别针 149 | scissors 剪刀 150 | sellotape 胶带 151 | stamps 邮票 152 | pen 钢笔 153 | pencil 铅笔 154 | tissues 纸巾 155 | toilet paper toilet roll 厕纸 156 | toothpaste 牙膏 157 | tube of toothpaste 一管牙膏 158 | writing paper 写字纸 159 | 清洗用具 160 | bin bag bin liner 垃圾袋 161 | bleach 漂白水 162 | detergent 洗涤剂 163 | disinfectant 消毒水 164 | dustbin bag 垃圾袋 165 | duster 抹尘布 166 | fabric softener 柔顺剂 167 | floorcloth 擦地布 168 | furniture polish 家俱油 169 | hoover bag 吸尘袋 170 | shoe polish 鞋油 171 | soap 肥皂 172 | washing powder 洗衣粉 173 | """ 174 | # 生活用品类 175 | # s = daily_use.replace('\n',' ').split(' ') 176 | # res = re.findall("\d+|[a-zA-Z]+", fruit) # ['not', '404', 'found', '99'] 177 | # fruit_list = [item for item in s if not item in res] 178 | # sort_list(fruit_list) 179 | 180 | 181 | kitchen_ele = """fridge (refrigerator的缩写) 冰箱 182 | coffee pot 咖啡壶 183 | cooker 厨具 184 | dishwasher 洗碗机 185 | freezer 冰柜 186 | kettle 水壶 187 | oven 烤炉 188 | stove 炉子 189 | toaster 吐司机 190 | washing machine 洗衣机 191 | 厨房器具 192 | bottle opener 啤酒开瓶器(金属盖) 193 | chopping board 案板 194 | colander 漏勺 195 | corkscrew 红酒开瓶器(软木塞盖) 196 | frying pan 煎锅 197 | grater cheese grater 刨丝器,奶酪刨丝器 198 | juicer 榨汁器 199 | kitchen foil 锡纸 200 | kitchen scales 厨房秤 201 | ladle 长柄勺 202 | mixing bowl 搅拌碗 203 | oven cloth 烤炉巾 204 | oven gloves 烤炉用手套 205 | rolling pin 擀面杖 206 | saucepan 煮锅 207 | scouring pad / scourer 百洁布 208 | sieve 筛子 209 | tin opener 开罐器 210 | tongs 夹子 211 | tray 盘子 212 | whisk 打蛋器 213 | wooden spoon 木勺 214 | 餐具 215 | knife 刀子 216 | fork 叉子 217 | spoon 匙子 218 | dessert spoon 点心匙 219 | soup spoon 汤匙 220 | tablespoon 大汤匙 221 | teaspoon 茶匙 222 | carving knife 切肉用的餐刀 223 | chopsticks 筷子 224 | 陶器和玻璃制品 225 | cup 杯子 226 | bowl 碗 227 | crockery 陶器 228 | glass 玻璃杯 229 | jar 罐子 230 | jug 瓶 231 | mug 茶杯 232 | plate 碟子 233 | saucer 茶碟 234 | sugar bowl 糖碗 235 | teapot 茶壶 236 | wine glass 酒杯 237 | 238 | bin 垃圾桶 239 | cling film 保鲜膜 240 | cookery book 食谱 241 | dishcloth 洗碗布 242 | draining board 滴水板 243 | grill 烤架 244 | kitchen roll 厨房纸巾 245 | plug 插头 246 | tea towel 茶巾 247 | shelf 架子 248 | sink 洗涤槽 249 | tablecloth 桌布 250 | washing-up liquid 洗洁精""".replace(" "," ") 251 | 252 | # # 厨房电器 253 | # s = kitchen_ele.replace('\n',' ').split(' ') 254 | # res = re.findall("\d+|[a-zA-Z]+", fruit) # ['not', '404', 'found', '99'] 255 | # fruit_list = [item for item in s if not item in res] 256 | # sort_list(fruit_list) 257 | 258 | pets = """cat 猫 259 | dog 狗 260 | goldfish (复数形式:goldfish) 金鱼 261 | guinea pig 豚鼠 262 | hamster 仓鼠 263 | horse 马 264 | kitten 小猫 265 | mouse 老鼠 266 | parrot 鹦鹉 267 | pony 小马 268 | puppy 小狗 269 | rabbit 白兔 270 | snake 蛇 271 | tropical fish (复数形式:tropical fish) 热带鱼 272 | turtle 乌龟 273 | 其他单词 274 | to bark 叫 275 | to bite 咬 276 | to keep a pet 养宠物 277 | to ride a horse 骑马 278 | to ride a pony 骑小马 279 | to train 训练 280 | to walk the dog / to take the dog a walk 遛狗 281 | lead 狗绳""" 282 | 283 | 284 | # pet_list = to_word_list(about_car) 285 | # sort_list(pet_list) 286 | 287 | about_car = """accelerator 油门踏板 288 | brake pedal 刹车踏板 289 | clutch pedal 离合器踏板 290 | fuel gauge 油表 291 | gear stick 变速杆 292 | handbrake 手刹 293 | speedometer 速度表 294 | steering wheel 方向盘 295 | temperature gauge 温度表 296 | warning light 警示灯 297 | 机械部分 298 | battery 蓄电池 299 | brakes 刹车 300 | clutch 离合器 301 | engine 引擎 302 | fan belt 风扇皮带 303 | exhaust 排气 304 | exhaust pipe 排气管 305 | gear box 齿轮箱 306 | ignition 点火开关 307 | radiator 散热器 308 | spark plug 火花塞 309 | windscreen wiper 雨刮 310 | windscreen wipers 雨刮器 311 | 其他单词 312 | air conditioning 空调 313 | automatic 自动的 314 | central locking 中央门锁 315 | manual 手动的 316 | tax disc 汽车路税圆形纳税证 317 | sat nav (satellite navigation的缩写) 卫星导航 318 | 灯光和视镜 319 | brake light 刹车灯 320 | hazard lights 双闪灯 321 | headlamp 前灯 322 | headlamps 前照灯 323 | headlights 前照灯 324 | indicator 指示灯 325 | indicators 指示灯 326 | rear view mirror 后视镜 327 | sidelights 示宽灯 328 | wing mirror 侧视镜 329 | 其他部件 330 | aerial 天线 331 | back seat 后排座位 332 | bonnet 引擎罩 333 | boot 行李箱 334 | bumper 保险杠 335 | child seat 儿童座椅 336 | cigarette lighter 打火机 337 | dashboard 仪表板 338 | front seat 前排座位 339 | fuel tank 油箱 340 | glove compartment 副驾驶前面的小柜子 341 | glovebox 手套箱,副驾驶前面的小柜子 342 | heater 暖气 343 | number plate 车牌 344 | passenger seat 乘客座位 345 | petrol tank 油箱 346 | roof 车顶 347 | roof rack 车顶行李架 348 | seatbelt 安全带 349 | spare wheel 备胎 350 | tow bar 牵引杆 351 | tyre 轮胎 352 | wheel 车轮 353 | window 车窗 354 | windscreen 挡风玻璃""" 355 | 356 | 357 | 358 | # car_list = to_word_list(about_car) 359 | # sort_list(car_list) 360 | 361 | 362 | # sort_list("纸、废塑料、废金属、废包装物、废旧纺织物、废弃电器电子产品、废玻璃、废纸塑铝复合包装") 363 | 364 | 365 | def name_to_json(): 366 | name_list_f = open("ansdata/name_list.txt","r") 367 | name_list = list(set(eval("["+name_list_f.read().replace("}","},")+"]"))) 368 | name_list_f.close() 369 | with open('ansdata/name_list.json', "w", encoding='utf-8') as write_name_list_json: 370 | json.dump(name_list, write_name_list_json,ensure_ascii=False) 371 | 372 | 373 | def json_data_to_answer(): 374 | with open('ansdata/name_list.json', "r", encoding='utf-8') as name_list_f: 375 | name_list = json.load(name_list_f) 376 | sort_list(name_list) 377 | 378 | 379 | def answer_to_json(): 380 | ans_list_f = open("ansdata/answer_data.txt", "r") 381 | ans_list = eval(json.dumps('['+str(ans_list_f.read()).replace(",", "").replace("}", "},")+']').encode('utf-8')) 382 | print(ans_list,type(ans_list)) 383 | # ans_list = list(set(ans_list)) 384 | print(len(ans_list)) 385 | ans_list_f.close() 386 | with open('ansdata/answer_data.json', "w", encoding='utf-8') as ans_list_json: 387 | json.dump(ans_list, ans_list_json, ensure_ascii=False) 388 | 389 | # answer_to_json() 390 | # ans_data = open("ansdata/answer_data.txt","r") 391 | 392 | def data_to_dict(): 393 | last_data = {} 394 | with open('ansdata/answer_data.json', "r", encoding='utf-8') as ans_list_json: 395 | datas = json.load(ans_list_json) 396 | for i in datas: 397 | key = eval(str(i.keys())[10:-1])[0] 398 | value = eval(str(i.values())[12:-1])[0] 399 | print(key,value) 400 | if value in last_data: 401 | if key not in last_data[value]: 402 | last_data[value].append(key) 403 | else: 404 | last_data[value] = [key] 405 | 406 | with open('ansdata/answer_data0.json', "w", encoding='utf-8') as ans_last_json: 407 | json.dump(last_data, ans_last_json, ensure_ascii=False) 408 | 409 | 410 | # data_to_dict() 411 | 412 | def good_dict(): 413 | last_data = {} 414 | with open('ansdata/answer_data0.json', "r", encoding='utf-8') as ans_list_json: 415 | datas = json.load(ans_list_json) 416 | for trash_class in datas.keys(): 417 | for i in datas[trash_class]: 418 | last_data[i] = trash_class 419 | print(last_data) 420 | with open('ansdata/good_data.json', "w", encoding='utf-8') as ans_last_json: 421 | json.dump(last_data, ans_last_json, ensure_ascii=False) 422 | 423 | good_dict() -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "chat-interface", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "ali-oss": "^6.1.1", 7 | "axios": "^0.21.1", 8 | "react": "^16.8.6", 9 | "react-dom": "^16.8.6", 10 | "react-redux": "^7.1.0", 11 | "react-scripts": "3.0.1", 12 | "redux": "^4.0.1", 13 | "redux-thunk": "^2.3.0" 14 | }, 15 | "scripts": { 16 | "deploy": "react-scripts build && node deploy.js", 17 | "start": "react-scripts start", 18 | "build": "react-scripts build", 19 | "test": "react-scripts test", 20 | "eject": "react-scripts eject" 21 | }, 22 | "eslintConfig": { 23 | "extends": "react-app" 24 | }, 25 | "browserslist": { 26 | "production": [ 27 | ">0.2%", 28 | "not dead", 29 | "not op_mini all" 30 | ], 31 | "development": [ 32 | "last 1 chrome version", 33 | "last 1 firefox version", 34 | "last 1 safari version" 35 | ] 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 13 | 14 | 23 | what-trash 24 | 25 | 26 | You need to enable JavaScript to run this app. 27 | 28 | 29 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | } 10 | ], 11 | "start_url": ".", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /run.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from flask import Flask, redirect, url_for, render_template, request, send_file, send_from_directory, make_response 3 | import requests 4 | import datetime 5 | import json 6 | import random 7 | import trash 8 | global false, null, true 9 | false = null = true = "" 10 | app = Flask(__name__) 11 | 12 | 13 | @app.route('/trash', methods=['GET']) 14 | def what_trash(): 15 | trashname = request.args.get('name') 16 | res = trash.trash(trashname) 17 | status = 0 18 | if '属于' in res: 19 | status = 1 20 | ans = { 21 | 'status': status, 22 | 'content': res 23 | } 24 | ans = make_response(json.dumps(ans)) 25 | ans.headers['Access-Control-Allow-Origin'] = '*' 26 | ans.headers['Content-Type'] = 'application/json' 27 | return ans 28 | 29 | 30 | if __name__ == '__main__': 31 | app.run(debug=True, host='0.0.0.0', port=1028) # host='0.0.0.0', port=80, 32 | -------------------------------------------------------------------------------- /src/App.css: -------------------------------------------------------------------------------- 1 | .App { 2 | width: 100%; 3 | height: 100%; 4 | } 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/home/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { connect } from 'react-redux'; 3 | import { addInputItem, changeInputValue, toGetResponse } from './store/actionCreators'; 4 | import _ from 'lodash' 5 | 6 | const Home = (props) => { 7 | return ( 8 | 9 | 10 | what-trash 11 | 12 | 13 | 14 | 15 | 16 | 我是小小垃圾分类助手,告诉我你想进行分类的任何垃圾哟~ 17 | 18 | 19 | { 20 | props.list.map((item, index) => { 21 | return ( 22 | 23 | 24 | 25 | {item} 26 | 27 | 28 | 29 | 30 | 31 | 32 | {props.response[index]} 33 | 34 | 35 | 36 | ) 37 | }) 38 | } 39 | 40 | {props.handleSubmit(e, props)} }> 41 | 42 | 发送 43 | 44 | 45 | ) 46 | 47 | } 48 | 49 | const RandomNum = _.random(1,3) //随机数,为了从cdn里随机挑选一个头像 50 | 51 | const styles = { 52 | container : { 53 | margin: '0 auto', 54 | height: '100%', 55 | display: 'flex', 56 | flexDirection: 'column', 57 | justifyContent: 'center', 58 | alignItems: 'flex-end', 59 | color: 'white', 60 | }, 61 | header: { 62 | position: 'fixed', 63 | top: '0', 64 | width: '100%', 65 | height: '50px', 66 | lineHeight: '50px', 67 | textAlign: 'center', 68 | background: '#01AFFF', 69 | }, 70 | avator: { 71 | width: '45px', 72 | height: '45px', 73 | margin: '0 10px', 74 | border: '0', 75 | borderRadius: '50%', 76 | }, 77 | content: { 78 | position: 'fixed', 79 | top: '50px', 80 | bottom: '55px', 81 | overflowY: 'scroll', 82 | flex: 1, 83 | width: '100%', 84 | background: '#F1F2F7', 85 | msg: { 86 | width: '70%', 87 | position: 'relative', 88 | }, 89 | 90 | item: { 91 | display: 'flex', 92 | justifyContent: 'flex-end', 93 | textAlign: 'right', 94 | info: { 95 | display: 'inline-block', 96 | padding: '10px 15px', 97 | backgroundColor: '#1FBAFC', 98 | boxShadow: '0px 0px 2px #1FBAFD', 99 | borderRadius: '15px', 100 | }, 101 | }, 102 | 103 | response: { 104 | display: 'flex', 105 | justifyContent: 'flex-start', 106 | textAlign: 'left', 107 | margin: '10px 0', 108 | info: { 109 | display: 'inline-block', 110 | padding: '10px 10px', 111 | background: '#ffffff', 112 | borderRadius: '15px', 113 | color: 'black', 114 | wordWrap: 'break-word', 115 | } 116 | } 117 | 118 | }, 119 | footer: { 120 | position: 'fixed', 121 | bottom: '0', 122 | // maxWidth: '420px', 123 | paddingTop: '8px', 124 | width: '100%', 125 | display: 'flex', 126 | background: '#ececf4', 127 | height: '50px', 128 | lineHeight: '50px', 129 | input: { 130 | flex: '1', 131 | marginLeft: '10px', 132 | paddingLeft: '15px', 133 | height: '40px', 134 | lineHeight: '40px', 135 | fontSize: '16px', 136 | border: 'none', 137 | borderRadius: '20px', 138 | outline: 'none', 139 | }, 140 | button: { 141 | width: '70px', 142 | height: '40px', 143 | marginLeft: '10px', 144 | marginRight: '10px', 145 | borderRadius: '20px', 146 | border: 'none', 147 | background: '#1FBAFC', 148 | color: '#ffffff' 149 | } 150 | }, 151 | 152 | } 153 | 154 | const mapStateToProps = (state) => { 155 | return { 156 | inputValue: state.inputValue, 157 | list: state.list, 158 | response: state.resList, 159 | } 160 | } 161 | 162 | const mapDispatchToProps = (dispatch) => { 163 | return { 164 | handleInputValue(e) { 165 | const action = changeInputValue(e.target.value) 166 | dispatch(action) 167 | }, 168 | handleSubmit(e, props) { 169 | e.preventDefault() 170 | if (props.inputValue !== '') { 171 | const action = addInputItem() 172 | dispatch(action) 173 | const param = {"name": props.inputValue} 174 | // console.log("param", param) 175 | const resAction = toGetResponse(param) 176 | dispatch(resAction) 177 | setTimeout(() => { 178 | this.scrollButtom() 179 | }, 0); 180 | } else { 181 | console.log("input不能为空") 182 | } 183 | }, 184 | scrollButtom() { 185 | let cont = document.getElementById("cont") 186 | cont.scrollTop = cont.scrollHeight 187 | } 188 | 189 | } 190 | } 191 | 192 | 193 | export default connect(mapStateToProps, mapDispatchToProps)(Home); 194 | -------------------------------------------------------------------------------- /src/home/store/actionCreators.js: -------------------------------------------------------------------------------- 1 | import { ADD_ITEM, CHANGE_INPUT_VALUE, GET_RESPONSE_VALUE} from './actionType' 2 | import axios from 'axios' 3 | 4 | export const addInputItem = (value) => ({ 5 | type: ADD_ITEM, 6 | value 7 | }) 8 | 9 | export const changeInputValue = (value) => ({ 10 | type: CHANGE_INPUT_VALUE, 11 | value 12 | }) 13 | 14 | export const getResponseValue = (data) => ({ 15 | type: GET_RESPONSE_VALUE, 16 | data 17 | }) 18 | 19 | export const toGetResponse = (param) => { 20 | return (dispatch) => { 21 | axios.get('http://118.25.236.82:1028/trash',{params: param}).then((res) =>{ 22 | if (res) { 23 | const data = res.data.content 24 | const action = getResponseValue(data) 25 | dispatch(action) 26 | } else { 27 | const data = '我有点反应不过来' 28 | const action = getResponseValue(data) 29 | dispatch(action) 30 | } 31 | 32 | }).catch( (err) => { 33 | const data = '我有点不太明白你在说什么' 34 | const action = getResponseValue(data) 35 | dispatch(action) 36 | console.log(err) 37 | }) 38 | } 39 | } -------------------------------------------------------------------------------- /src/home/store/actionType.js: -------------------------------------------------------------------------------- 1 | export const CHANGE_INPUT_VALUE = 'change_input_value'; 2 | export const ADD_ITEM = 'add_item'; 3 | export const GET_RESPONSE_VALUE = 'get_response_value'; -------------------------------------------------------------------------------- /src/home/store/index.js: -------------------------------------------------------------------------------- 1 | import { createStore, applyMiddleware, compose} from 'redux'; 2 | import reducer from './reducer' //reducer 3 | import thunk from 'redux-thunk' 4 | 5 | const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? 6 | window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({ }) : compose; 7 | 8 | const enhancer = composeEnhancers( 9 | applyMiddleware(thunk), 10 | // other store enhancers if any 11 | ); 12 | 13 | const store = createStore( 14 | reducer, 15 | enhancer 16 | ); //将reducer传入 创建store store可以去reducer中查看数据了 17 | 18 | export default store; -------------------------------------------------------------------------------- /src/home/store/reducer.js: -------------------------------------------------------------------------------- 1 | const defaultValue = { 2 | inputValue: '碎陶瓷是什么垃圾?', 3 | list: [], 4 | resList: [] 5 | } 6 | 7 | export default (state = defaultValue, action) => { 8 | if (action.type === 'change_input_value') { 9 | const newState = JSON.parse(JSON.stringify(state)) 10 | newState.inputValue = action.value 11 | return newState 12 | } 13 | if (action.type === 'add_item') { 14 | const newState = JSON.parse(JSON.stringify(state)) 15 | newState.list.push(newState.inputValue) 16 | newState.inputValue = '' 17 | return newState 18 | } 19 | if (action.type === 'get_response_value') { 20 | const newState = JSON.parse(JSON.stringify(state)) 21 | console.log("action.data", action.data) 22 | newState.resList.push(action.data) 23 | return newState 24 | } 25 | return state 26 | } -------------------------------------------------------------------------------- /src/images/chatAvatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aboutmydreams/what-trash/ea4a539a4aa3bff61d15f8558bfe5d3c28ab9a51/src/images/chatAvatar.png -------------------------------------------------------------------------------- /src/images/robot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aboutmydreams/what-trash/ea4a539a4aa3bff61d15f8558bfe5d3c28ab9a51/src/images/robot.jpg -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | body,html{ 2 | margin: 0; 3 | width: 100%; 4 | height: 100%; 5 | } 6 | #root { 7 | width: 100%; 8 | height: 100%; 9 | } 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", 12 | monospace; 13 | } 14 | input:focus, textarea:focus, button { 15 | outline: none; 16 | } 17 | 18 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import './index.css'; 4 | 5 | import { Provider } from 'react-redux' 6 | import store from './home/store' 7 | import Home from './home' 8 | 9 | import * as serviceWorker from './serviceWorker'; 10 | 11 | const App = ( 12 | 13 | 14 | 15 | ) 16 | 17 | ReactDOM.render(App, document.getElementById('root')); 18 | 19 | // If you want your app to work offline and load faster, you can change 20 | // unregister() to register() below. Note this comes with some pitfalls. 21 | // Learn more about service workers: https://bit.ly/CRA-PWA 22 | serviceWorker.unregister(); 23 | -------------------------------------------------------------------------------- /src/serviceWorker.js: -------------------------------------------------------------------------------- 1 | // This optional code is used to register a service worker. 2 | // register() is not called by default. 3 | 4 | // This lets the app load faster on subsequent visits in production, and gives 5 | // it offline capabilities. However, it also means that developers (and users) 6 | // will only see deployed updates on subsequent visits to a page, after all the 7 | // existing tabs open on the page have been closed, since previously cached 8 | // resources are updated in the background. 9 | 10 | // To learn more about the benefits of this model and instructions on how to 11 | // opt-in, read https://bit.ly/CRA-PWA 12 | 13 | const isLocalhost = Boolean( 14 | window.location.hostname === 'localhost' || 15 | // [::1] is the IPv6 localhost address. 16 | window.location.hostname === '[::1]' || 17 | // 127.0.0.1/8 is considered localhost for IPv4. 18 | window.location.hostname.match( 19 | /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ 20 | ) 21 | ); 22 | 23 | export function register(config) { 24 | if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { 25 | // The URL constructor is available in all browsers that support SW. 26 | const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); 27 | if (publicUrl.origin !== window.location.origin) { 28 | // Our service worker won't work if PUBLIC_URL is on a different origin 29 | // from what our page is served on. This might happen if a CDN is used to 30 | // serve assets; see https://github.com/facebook/create-react-app/issues/2374 31 | return; 32 | } 33 | 34 | window.addEventListener('load', () => { 35 | const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; 36 | 37 | if (isLocalhost) { 38 | // This is running on localhost. Let's check if a service worker still exists or not. 39 | checkValidServiceWorker(swUrl, config); 40 | 41 | // Add some additional logging to localhost, pointing developers to the 42 | // service worker/PWA documentation. 43 | navigator.serviceWorker.ready.then(() => { 44 | console.log( 45 | 'This web app is being served cache-first by a service ' + 46 | 'worker. To learn more, visit https://bit.ly/CRA-PWA' 47 | ); 48 | }); 49 | } else { 50 | // Is not localhost. Just register service worker 51 | registerValidSW(swUrl, config); 52 | } 53 | }); 54 | } 55 | } 56 | 57 | function registerValidSW(swUrl, config) { 58 | navigator.serviceWorker 59 | .register(swUrl) 60 | .then(registration => { 61 | registration.onupdatefound = () => { 62 | const installingWorker = registration.installing; 63 | if (installingWorker == null) { 64 | return; 65 | } 66 | installingWorker.onstatechange = () => { 67 | if (installingWorker.state === 'installed') { 68 | if (navigator.serviceWorker.controller) { 69 | // At this point, the updated precached content has been fetched, 70 | // but the previous service worker will still serve the older 71 | // content until all client tabs are closed. 72 | console.log( 73 | 'New content is available and will be used when all ' + 74 | 'tabs for this page are closed. See https://bit.ly/CRA-PWA.' 75 | ); 76 | 77 | // Execute callback 78 | if (config && config.onUpdate) { 79 | config.onUpdate(registration); 80 | } 81 | } else { 82 | // At this point, everything has been precached. 83 | // It's the perfect time to display a 84 | // "Content is cached for offline use." message. 85 | console.log('Content is cached for offline use.'); 86 | 87 | // Execute callback 88 | if (config && config.onSuccess) { 89 | config.onSuccess(registration); 90 | } 91 | } 92 | } 93 | }; 94 | }; 95 | }) 96 | .catch(error => { 97 | console.error('Error during service worker registration:', error); 98 | }); 99 | } 100 | 101 | function checkValidServiceWorker(swUrl, config) { 102 | // Check if the service worker can be found. If it can't reload the page. 103 | fetch(swUrl) 104 | .then(response => { 105 | // Ensure service worker exists, and that we really are getting a JS file. 106 | const contentType = response.headers.get('content-type'); 107 | if ( 108 | response.status === 404 || 109 | (contentType != null && contentType.indexOf('javascript') === -1) 110 | ) { 111 | // No service worker found. Probably a different app. Reload the page. 112 | navigator.serviceWorker.ready.then(registration => { 113 | registration.unregister().then(() => { 114 | window.location.reload(); 115 | }); 116 | }); 117 | } else { 118 | // Service worker found. Proceed as normal. 119 | registerValidSW(swUrl, config); 120 | } 121 | }) 122 | .catch(() => { 123 | console.log( 124 | 'No internet connection found. App is running in offline mode.' 125 | ); 126 | }); 127 | } 128 | 129 | export function unregister() { 130 | if ('serviceWorker' in navigator) { 131 | navigator.serviceWorker.ready.then(registration => { 132 | registration.unregister(); 133 | }); 134 | } 135 | } 136 | -------------------------------------------------------------------------------- /trash.py: -------------------------------------------------------------------------------- 1 | import requests, re, json 2 | import random 3 | 4 | unknow_answer = [ 5 | '我现在还不太明白这种垃圾呢!', 6 | '我有点看不懂你的意思呀,或许你可以问问小家园?', 7 | '其实我不太明白你的意思……', 8 | '抱歉哦,我现在的能力还不能够明白你在说什么垃圾,但我会加油的~' 9 | ] 10 | 11 | with open('ansdata/good_data.json', "r", encoding='utf-8') as ans_list_json: 12 | all_datas = json.load(ans_list_json) 13 | 14 | def trash(trash_name): 15 | 16 | if not trash_name: 17 | return random.choice(unknow_answer) 18 | 19 | trash_name1 = trash_name.replace("是什么垃圾", "").replace("是什么垃圾", "").replace("?", "").replace("?", "").replace(' ', '') 20 | 21 | trash_name2 = re.sub(u"([^\u4e00-\u9fa5\u0030-\u0039\u0041-\u005a\u0061-\u007a])", "", trash_name1) 22 | str_name = re.sub('[a-zA-Z0-9’!"#$%&\'()*+,-./:;<=>?@,。?★、…【】《》?“”‘’![\\]^_`{|}~\s]+', "", trash_name2) 23 | if str_name == '': 24 | return random.choice(unknow_answer) 25 | 26 | if trash_name in ["你", "浩浩", "你们", "那你"]: 27 | inter_answer = [ 28 | '我这么聪明,怎么会是垃圾呢?', 29 | '我就是除了尬聊什么都不会的小垃圾,唉。', 30 | '好了,那你又是什么垃圾?', 31 | '你都这样问了,我无可奉告', 32 | '为啥又有人问我这个问题...', 33 | '我还能和你聊天,看来我也不是一无是处qwq', 34 | '嗯?我是垃圾?嘿嘿 那你装得下我嘛?', 35 | '我是不可回收垃圾呜呜呜,不要卖了我', 36 | '我这么机智,要说是也是高智商垃圾吧' 37 | ] 38 | return random.choice(inter_answer) 39 | if trash_name2 in ["我", "我们", "那我"]: 40 | inter_answer = [ 41 | '你这么聪明,怎么会是垃圾呢?', 42 | '你看起来不像来自地球,不会是太空垃圾吧?', 43 | '你这么机智,要说是也是高智商垃圾吧', 44 | '你这么瘦,看起来被啃过一样~ 不会是厨余垃圾八~', 45 | '没想到这个世界上居然会有人像我一样承认自己是垃圾', 46 | '我不想告诉你真相,怕你伤心' 47 | ] 48 | return random.choice(inter_answer) 49 | if trash_name2 in ["群主", "楼上", "欣芝"]: 50 | inter_answer = [ 51 | '{}这么聪明,怎么会是垃圾呢?'.format(trash_name), 52 | '{}看起来不像来自地球,不会是太空垃圾吧?'.format(trash_name), 53 | '{}这么机智,要说是也是高智商垃圾吧'.format(trash_name) 54 | ] 55 | return random.choice(inter_answer) 56 | if trash_name2 in ["老汪头", "郑宇杰"]: 57 | inter_answer = [ 58 | '为啥又有人问我这个问题...', 59 | '{}这么笨,被归属于垃圾,垃圾家族应该不会满意吧!!'.format(trash_name), 60 | '{}看起来不像来自地球,不会是太空垃圾吧?'.format(trash_name), 61 | '{}这么搞笑,或许是娱乐垃圾吧'.format(trash_name) 62 | ] 63 | return random.choice(inter_answer) 64 | 65 | if trash_name2 in all_datas: 66 | # print('='*100) 67 | trash_is = all_datas[trash_name2] 68 | ans = '{}属于{}{}'.format(trash_name, str(trash_is), random.choice(['哦~', '呢!', '的啦!', '哟~'])) 69 | return ans 70 | 71 | try: 72 | url = 'http://trash.lhsr.cn/sites/feiguan/trashTypes_3/Handler/Handler.ashx?a=GET_KEYWORDS&kw={}'.format(trash_name2) 73 | res = requests.get(url, headers = { 74 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3962.2 Safari/537.36' 75 | }) 76 | data = json.loads(res.text) 77 | if data['kw_list']: 78 | list = data['kw_list'] 79 | if (trash_name2 in list): 80 | trash_is = data['kw_arr'][list.index(trash_name2)]['TypeKey'] 81 | ans = '{}属于{}{}'.format(trash_name, str(trash_is), random.choice(['哦~', '呢!', '的啦!', '哟~'])) 82 | else: 83 | trash_is = '、'.join(list) 84 | ans = '你问的是{}中的哪一个呢?请输入全名哦~'.format(trash_is) 85 | return ans 86 | else: raise IndexError 87 | # ans_data_f = open("ansdata/answer_data.txt","a") 88 | # ans_data = {trash_name2: trash_is} 89 | # ans_data_f.write(str(ans_data)) 90 | except IndexError or requests.exceptions.ConnectionError: 91 | random_sentence = ( 92 | '我现在还不太明白{}是什么垃圾呢,但没关系,你可以问点别的呢!比如我是什么垃圾'.format(trash_name), 93 | '我有点看不懂你的意思呀,或许你可以问问小家园?', 94 | '其实我不太明白{}的意思……'.format(trash_name), 95 | '这个我不知道呢...或许是厨余垃圾?', 96 | '为啥又有人问我这个问题...', 97 | '这个我不知道呢...{}可能是厨余垃圾?'.format(trash_name), 98 | '不知道哦...看样子含水量挺多的?可能是湿垃圾吧', 99 | '看起来挺酷的...{}难道是电子垃圾?'.format(trash_name), 100 | '不知道...但愿Ta是无毒无害垃圾吧', 101 | '这个我不确定呢,难不成是太空垃圾?' 102 | ) 103 | other_name = cut_find_more_word(trash_name2) 104 | if other_name == []: 105 | other_name = '' 106 | else: 107 | # print(other_name) 108 | name_list = list(set(other_name)) 109 | ans_data_f = open("ansdata/name_list.txt", "a") 110 | ans_data_f.write(str(name_list)[1:-1] + ',') 111 | other_name = '或许你想问的是' + '、'.join(name_list) + '?' 112 | 113 | return random.choice(random_sentence) + other_name 114 | 115 | 116 | # print(res) 117 | 118 | def other_trash(name): 119 | url = 'http://trash.lhsr.cn/sites/feiguan/trashTypes/dyn/Handler/Handler.ashx' 120 | datas = { 121 | 'a': 'Keywords_Get', 122 | 's_kw': name 123 | } 124 | try: 125 | res = requests.post(url, data=datas, timeout=3).text 126 | if res == "": 127 | return [] 128 | else: 129 | res = eval(requests.post(url, data=datas, timeout=3).text) 130 | # ["502胶水","504胶水","504胶水废包装"] 131 | return res 132 | except: 133 | return [] 134 | 135 | 136 | def cut_find_more_word(word): 137 | url_list = ['http://114.67.84.223/get.php?source=', 'http://120.26.6.172/get.php?source=', 138 | 'http://116.196.101.207/get.php?source='] 139 | 140 | # print(url) 141 | try: 142 | url = random.choice(url_list) + word + "¶m1=0¶m2=1&json=1" 143 | res = eval(requests.get(url).text) 144 | except requests.exceptions.ConnectionError: 145 | url = random.choice(url_list) + word + "¶m1=0¶m2=1&json=1" 146 | res = eval(requests.get(url).text) 147 | word_list = [] 148 | for i in res: 149 | if float(i["p"]) > 0.9: 150 | word_list.append(i["t"]) 151 | 152 | more_word = [] 153 | if word_list is not []: 154 | for w in word_list: 155 | others = other_trash(w) 156 | if others != [] and others not in more_word: 157 | more_word.extend(others) 158 | return more_word 159 | 160 | 161 | def sort_list(trash_list_str: str or list) -> str: 162 | if type(trash_list_str) is list: 163 | trash_list = list(set(trash_list_str)) 164 | else: 165 | trash_list = trash_list_str.replace(',','、').replace('等','').split('、') 166 | # print(trash_list) 167 | for i in trash_list: 168 | ans = trash(i) 169 | print(ans) 170 | 171 | # sort_list("榴莲壳、椰子壳、柚子皮") 172 | 173 | # a = trash("行李箱") 174 | print("run!!!") 175 | # other_trash("人") 176 | --------------------------------------------------------------------------------