diff --git a/client/src/pdd_collect_service.py b/client/src/pdd_collect_service.py
index 6db10e9..01291d3 100644
--- a/client/src/pdd_collect_service.py
+++ b/client/src/pdd_collect_service.py
@@ -794,7 +794,7 @@ class PddCollectService:
page_timeout: float = 30.0,
spec_panel_timeout: float = 10.0,
overall_timeout: float = 600.0,
- max_goods_page_swipes: int = 12,
+ max_goods_page_swipes: int = 6,
max_spec_swipes: int = 12,
max_sku_count: int = 200,
color_poll_interval: float = 0.1,
diff --git a/client/test/test_pdd_collect_service.py b/client/test/test_pdd_collect_service.py
index e172345..c14d5e7 100644
--- a/client/test/test_pdd_collect_service.py
+++ b/client/test/test_pdd_collect_service.py
@@ -1351,6 +1351,35 @@ class PddCollectParserTest(unittest.TestCase):
self.assertTrue(device.clicks)
self.assertEqual(device.swipe_panel_states[:2], [False, False])
+ def test_goods_metadata_default_swipe_limit_is_six(self):
+ pages = [
+ f"""
+
+
+
+ """
+ for index in range(7)
+ ]
+ device = GoodsMetadataScrollDevice(pages, self.spec_xml)
+ device.opened_url = "https://mobile.yangkeduo.com/goods.html?goods_id=123"
+ service = PddCollectService(
+ PddDeviceService(lambda _serial: device),
+ "USB-001",
+ "client-001",
+ sleeper=lambda _seconds: None,
+ )
+
+ result = service._collect_goods_details(device)
+
+ self.assertIsNone(result.shop_name)
+ self.assertIsNone(result.reviews.raw)
+ self.assertEqual(6, len(device.swipes))
+ self.assertEqual(6, device.page_index)
+
def test_cancel_during_goods_page_scroll_stops_before_spec_panel(self):
incomplete_home = self.home_xml.replace(
'