| body |
{"product": {"partial_update": 1, "variant_remote_code": "B0DL52BDLR", "rating": 5.0, "rating_count": 1, "brand": "HOSAILY", "seller_name": "b", "author": null, "name": "HOSAILY Peel Off Lip Liner Stain Tattoo, Long Lasting Waterproof Lip Stain Peel off, Tattoo Nude Lip Liner and Lip Gloss Combo, Non-Stick Cup Nourishing Lip Gloss Set Lipstick Makeup", "description": "Product Description:\n \nSize:\n11.7*4.5*1.9cm/4.6*1.8*0.7inches\n \nWeight:\n45g/1.6oz\n \nColor:\nAs the picture shows\n \nPackage Included:\npeel off lip liner and lip gloss\n \nSkin Type:\nAll Skin\n \nFeatures:\n 1.Special lip combo. \n 2.One lip gloss can bring you different lip makeup experience.\n 3.The vegan and cruelty-free formula, not only provides radiant color, but also helps to moisturize and condition the lips.\n 4.Long lasting and not easy to fade out.\n 5.Lip Gloss will keep your lips smooth, moisturized and say goodbye to dry, cracked lips.\n \nWarm Tips: \n \n 1.Keep the product out of reach of children.\n 2.Avoid direct sunlight exposure and store at room temperature.\n 3.All photos are taken in real products. Due to photography, display or other reasons, there may be slight differences between the picture and the real object. Please refer to the real object.\n 4.As most makeup, we highly recommend you to make a skin test before the first use.", "data": {"dataFacets": []}, "categories": ["Beauty & Personal Care > Makeup > Lips > Lip Liners"], "gender": "beauty_no_gender", "product_images": [], "market_id": 37, "remote_code": "B0D5345B3J", "is_lost": 0, "variants": [{"name": "HOSAILY Peel Off Lip Liner Stain Tattoo, Long Lasting Waterproof Lip Stain Peel off, Tattoo Pink Lip Liner and Lip Gloss Combo, Non-Stick Cup Nourishing Lip Gloss Set Lipstick Makeup", "remote_code": "B0DL52BDLR", "upc": "", "additional_upc": "B0DL52BDLR", "remote_url": "https://www.amazon.com/dp/B0DL52BDLR?th=1&psc=1", "delivery_days": 5, "weight": "", "size": "NO_SIZE", "origin_color": "Pink", "price": 9.99, "variant_images": ["https://m.media-amazon.com/images/I/61+kutpZiGL._SL1500_.jpg", "https://m.media-amazon.com/images/I/71PLKMntfpL._SL1500_.jpg", "https://m.media-amazon.com/images/I/7109QJDfLAL._SL1500_.jpg", "https://m.media-amazon.com/images/I/71hhQjYZHlL._SL1500_.jpg", "https://m.media-amazon.com/images/I/71aJosUfa4L._SL1500_.jpg", "https://m.media-amazon.com/images/I/71srQ5JmpEL._SL1500_.jpg", "https://m.media-amazon.com/images/I/71VKm94RNfL._SL1500_.jpg"], "stock_count": 1, "data": ["transfer"], "image_url": "https://m.media-amazon.com/images/I/61+kutpZiGL._SL1500_._AC_SY300.jpg", "description": "Color: Pink; Size: NO_SIZE", "colors": ["Pink"], "combo_key": "NO_SIZEPink"}]}, "remote_url": "https://www.amazon.com/dp/B0D5345B3J?th=1&psc=1#B0DL52BDLR", "parsing_type": "basket", "finalize": false, "parsing_code": 200, "parsing_text": "[200] Success: Item: 'B0D5345B3J' - parsed successfully. additional_error_text=''"} |
| error_text |
File "/opt/working_folder/middlewares/catch_errors_middleware/catch_500_errors.py", line 15, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 84, in call_next
raise app_exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 70, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 83, in __call__
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
await self.app(scope, receive, sender)
File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__
raise e
File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 718, in __call__
await route.handle(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
await self.app(scope, receive, send)
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 66, in app
response = await func(request)
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 274, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 193, in run_endpoint_function
return await run_in_threadpool(dependant.call, **values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/starlette/concurrency.py", line 41, in run_in_threadpool
return await anyio.to_thread.run_sync(func, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 33, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread
return await future
^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 807, in run
result = context.run(func, *args)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/working_folder/api/logging_router/api/product_logging.py", line 705, in log_product_upload
upsert_product_hash(
File "/opt/working_folder/api/logging_router/api/product_logging.py", line 368, in upsert_product_hash
db.execute(stmt)
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2362, in execute
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2256, in _execute_internal
result = conn.execute(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
return meth(
^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
return connection._execute_clauseelement(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
ret = self._execute_context(
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
return self._exec_single_context(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2355, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
cursor.execute(statement, parameters)
|