如何获取Shopify店铺的详细信息?——寻求替代/products.json端点的可行方案
Shopify店铺详细信息获取方案
Got it, let's walk through the most reliable ways to get those Shopify store details you're after—since web scraping is risky due to theme variations, sticking to official Shopify endpoints and APIs is the way to go:
1. 使用Shopify Admin API(最全面的方案)
这是获取店铺所有核心信息的权威途径,不过需要店铺的授权权限(可以让店铺所有者创建一个Private App,或者给你Custom App的访问权限)。
- 核心请求端点:
/admin/api/[最新版本号]/shop.json(比如2024-07是当前最新的API版本) - 返回内容包含:店铺邮箱、联系电话、物理地址、法定名称、时区等几乎所有你需要的信息
- 示例请求(假设你已获得API密钥和访问令牌):
curl -X GET "https://target-store.myshopify.com/admin/api/2024-07/shop.json" \ -H "X-Shopify-Access-Token: YOUR_AUTH_TOKEN" - 注意:如果是第三方获取其他店铺的信息,必须得到店铺所有者的授权才能访问该API。
2. 尝试公开的/shop.json端点(无需授权)
很多Shopify店铺默认会暴露一个公开的/shop.json端点,不需要任何权限就能获取基础店铺信息。比如你提到的gymshark,直接访问它的该路径就能拿到邮箱、店铺地址等关键内容。
- 优势:零门槛,无需任何授权
- 局限:不是所有店铺都开启了这个公开访问,但大部分品牌店和中小店铺都默认开放。
3. 通过Pages API获取联系/关于页面的信息
店铺的联系电话、邮箱、负责人信息通常会放在“联系我们”或“关于我们”页面中中。你可以通过Shopify的Pages API(或公开的/pages.json端点)获取这些页面的结构化数据:
- 先请求
/pages.json获取所有店铺页面的列表,找到handle为contact或about的页面ID - 再请求
/pages/{page_id}.json获取该页面的完整内容,里面会包含你需要的联系信息——这种方式比爬虫解析更稳定,因为是官方返回的结构化内容。
4. 使用Storefront API(面向公众,无需管理员权限)
如果你不需要后台核心数据,Storefront API可以获取店铺公开可见的信息,比如店铺名称、联系方式、地址等。它不需要管理员授权,只要店铺开启了Storefront API(几乎所有Shopify店铺都默认开启),你可以用公开访问令牌发起请求:
- 示例GraphQL查询:
query { shop { name email phone address { address1 city province zip country } } } - 适合无法获取管理员授权,但需要公开店铺信息的场景。
内容的提问来源于stack exchange,提问作者Usman
相关产品推荐
相关产品推荐

