PSA Graded Pokémon & One Piece Card Arbitrage Data Scraping (eBay Best Offer Sold Listings Only)
Budget: $12 – $30 SGD
I need a reliable script that pulls fresh product details and current prices from eBay every 24 hours and drops the results into a clean Excel workbook. The data points I absolutely need are:
• Full product title
• Item ID / listing URL
• Current price (and currency)
• Shipping cost if shown
• Seller name and feedback score
• Listing time-stamp so I can track changes day-to-day
WORKFLOW OVERVIEW:
You will receive:
Images from Singapore card vendors showing buyback prices
Use AI tools to:
Identify the card from the image
Search eBay:
For recent SOLD listings of the same PSA card
Extract:
Actual accepted Best Offer prices
Calculate:
Total landed cost in SGD
Compare:
Vendor Buyback Price vs Total Cost
Flag:
Arbitrage opportunity if profit ≥ 15%
You’re free to use Python (BeautifulSoup, Scrapy, Selenium, or the official eBay API) or any stack you prefer, so long as the process runs unattended on my VPS and avoids eBay’s anti-bot triggers.
Deliverables:
1. Well-documented source code with setup instructions
2. Automated scheduler (cron, Windows Task, or similar) set to run daily
3. An Excel file generated on each run, overwriting or appending as we agree
4. Brief README showing column definitions, run time, and any dependencies
I’ll consider the job complete once the script runs for 14 consecutive days without errors and the Excel output matches the fields listed above.
Head to the following websites every 2-3 days to view on latest buyback psa10 mode.
https://www.instagram.com/snorlaxhouse/ -> latest post
t.me/kazukitcg -> Join the group and head to buyback Prices
STEP 1 — CARD IDENTIFICATION (FROM IMAGE):
Use AI tools (Google Vision / ChatGPT Vision / Gemini etc.)
Extract and format strictly as:
YEAR, CHARACTER NAME, CARD NUMBER, SET NAME, LANGUAGE, PSA GRADE
Example:
2023 Pikachu 085/SV-P Van Gogh Promo Japanese PSA 10
2022 Monkey D. Luffy OP01-003 Romance Dawn Japanese PSA 10
STEP 2 — EXTRACT VENDOR DATA (FROM IMAGE):
Provide:
Vendor Buyback Price
Currency = SGD
STEP 3 — EBAY SOLD LISTING SEARCH:
Search format:
[Card Name] PSA [Grade]
Apply filters:
Sold Listings
PSA graded only
Same card number
Same language
Last 30 to 60 days
Buy It Now listings ONLY
STEP 4 — BEST OFFER ACCEPTED RULE (MANDATORY):
Use ONLY listings where:
Listing Type = Buy It Now
Offer Accepted = YES
Do NOT use:
Auction listings
Fixed price listings without Best Offer
Listings where accepted offer price cannot be found
STEP 5 — FIND TRUE ACCEPTED SOLD PRICE:
Use:
130Point.com
WatchCount.com
eBay Best Offer Price Checker Extension
Paste listing URL to retrieve:
Actual Accepted Sold Price (USD)
Record:
Actual Accepted Price
NOT the displayed eBay sold price
Use:
Last 5 to 10 listings
STEP 6 — DATA TO SCRAPE FROM EBAY:
Provide the following:
Displayed Sold Price (USD)
Actual Accepted Price (USD)
Offer Discount (%)
Number of Sales Used
Average Shipping Cost (USD)
Listing Type
Offer Accepted (YES / NO)
STEP 7 — COST CALCULATION:
Calculate:
Total Landed Cost (USD)
= Actual Accepted Price + Shipping
Convert USD → SGD
Include:
FX Rate Used
eBay Fee Estimate = 13%
Final Cost (SGD) =
(Total Landed SGD) + 13% Fees
STEP 8 — PROFITABILITY CHECK:
Provide:
Vendor Buyback Price (SGD)
Final Cost (SGD)
Profit (SGD) =
Vendor Buyback – Final Cost
Profit (%) =
Profit / Final Cost
STEP 9 — ARBITRAGE FLAGGING:
Mark:
YES = Profit ≥ 15%
NO = Profit < 15%
STEP 10 — EBAY COMPARABLE LINKS:
Provide:
Best lowest sold listing link
2 to 3 comparable sold listing links
FINAL OUTPUT REQUIREMENTS:
Submit results in:
Excel (.xlsx)
Each row must represent:
One PSA card
Include columns:
Card Name
Vendor Buyback (SGD)
Currency
Displayed Sold Price (USD)
Actual Accepted Price (USD)
Offer Discount (%)
Shipping (USD)
Total Landed (USD)
FX Rate
Total Landed (SGD)
eBay Fee (13%)
Final Cost (SGD)
Profit (SGD)
Profit (%)
Arbitrage (YES / NO)
Sales Count
Best Comp Link
Comp Link 1
Comp Link 2
Date Checked
Remarks
• Full product title
• Item ID / listing URL
• Current price (and currency)
• Shipping cost if shown
• Seller name and feedback score
• Listing time-stamp so I can track changes day-to-day
WORKFLOW OVERVIEW:
You will receive:
Images from Singapore card vendors showing buyback prices
Use AI tools to:
Identify the card from the image
Search eBay:
For recent SOLD listings of the same PSA card
Extract:
Actual accepted Best Offer prices
Calculate:
Total landed cost in SGD
Compare:
Vendor Buyback Price vs Total Cost
Flag:
Arbitrage opportunity if profit ≥ 15%
You’re free to use Python (BeautifulSoup, Scrapy, Selenium, or the official eBay API) or any stack you prefer, so long as the process runs unattended on my VPS and avoids eBay’s anti-bot triggers.
Deliverables:
1. Well-documented source code with setup instructions
2. Automated scheduler (cron, Windows Task, or similar) set to run daily
3. An Excel file generated on each run, overwriting or appending as we agree
4. Brief README showing column definitions, run time, and any dependencies
I’ll consider the job complete once the script runs for 14 consecutive days without errors and the Excel output matches the fields listed above.
Head to the following websites every 2-3 days to view on latest buyback psa10 mode.
https://www.instagram.com/snorlaxhouse/ -> latest post
t.me/kazukitcg -> Join the group and head to buyback Prices
STEP 1 — CARD IDENTIFICATION (FROM IMAGE):
Use AI tools (Google Vision / ChatGPT Vision / Gemini etc.)
Extract and format strictly as:
YEAR, CHARACTER NAME, CARD NUMBER, SET NAME, LANGUAGE, PSA GRADE
Example:
2023 Pikachu 085/SV-P Van Gogh Promo Japanese PSA 10
2022 Monkey D. Luffy OP01-003 Romance Dawn Japanese PSA 10
STEP 2 — EXTRACT VENDOR DATA (FROM IMAGE):
Provide:
Vendor Buyback Price
Currency = SGD
STEP 3 — EBAY SOLD LISTING SEARCH:
Search format:
[Card Name] PSA [Grade]
Apply filters:
Sold Listings
PSA graded only
Same card number
Same language
Last 30 to 60 days
Buy It Now listings ONLY
STEP 4 — BEST OFFER ACCEPTED RULE (MANDATORY):
Use ONLY listings where:
Listing Type = Buy It Now
Offer Accepted = YES
Do NOT use:
Auction listings
Fixed price listings without Best Offer
Listings where accepted offer price cannot be found
STEP 5 — FIND TRUE ACCEPTED SOLD PRICE:
Use:
130Point.com
WatchCount.com
eBay Best Offer Price Checker Extension
Paste listing URL to retrieve:
Actual Accepted Sold Price (USD)
Record:
Actual Accepted Price
NOT the displayed eBay sold price
Use:
Last 5 to 10 listings
STEP 6 — DATA TO SCRAPE FROM EBAY:
Provide the following:
Displayed Sold Price (USD)
Actual Accepted Price (USD)
Offer Discount (%)
Number of Sales Used
Average Shipping Cost (USD)
Listing Type
Offer Accepted (YES / NO)
STEP 7 — COST CALCULATION:
Calculate:
Total Landed Cost (USD)
= Actual Accepted Price + Shipping
Convert USD → SGD
Include:
FX Rate Used
eBay Fee Estimate = 13%
Final Cost (SGD) =
(Total Landed SGD) + 13% Fees
STEP 8 — PROFITABILITY CHECK:
Provide:
Vendor Buyback Price (SGD)
Final Cost (SGD)
Profit (SGD) =
Vendor Buyback – Final Cost
Profit (%) =
Profit / Final Cost
STEP 9 — ARBITRAGE FLAGGING:
Mark:
YES = Profit ≥ 15%
NO = Profit < 15%
STEP 10 — EBAY COMPARABLE LINKS:
Provide:
Best lowest sold listing link
2 to 3 comparable sold listing links
FINAL OUTPUT REQUIREMENTS:
Submit results in:
Excel (.xlsx)
Each row must represent:
One PSA card
Include columns:
Card Name
Vendor Buyback (SGD)
Currency
Displayed Sold Price (USD)
Actual Accepted Price (USD)
Offer Discount (%)
Shipping (USD)
Total Landed (USD)
FX Rate
Total Landed (SGD)
eBay Fee (13%)
Final Cost (SGD)
Profit (SGD)
Profit (%)
Arbitrage (YES / NO)
Sales Count
Best Comp Link
Comp Link 1
Comp Link 2
Date Checked
Remarks
Related categories:
Python
Excel
Web Scraping
Software Architecture
Data Mining
Scrapy
Data Scraping
BeautifulSoup