Ebay auction integration: A look behind the scenes of triplewhitefox.com

Once is a great while I use this space to write about the technical side of this site. You see, I am a geek at heart. My strategy has been to use technology at its fullest in order to present generally non-technical topics. I have thought about writing a blog about technology or adding technical topics here (which might be good for my career) but so far I have refrained from doing this. I face and solve a lot of technical challenges at work that might make a good read but, in my free time, I would rather focus on the things I enjoy. For this site, I use technology that I don’t get to use at work and in ways that enhance my hobbies.

When I first announced the integration of ebay listings into the site I mentioned that I needed to build some automation to make the tracking easier. For the last couple weeks I have been manually editing the for sale web page using an HTML editor. It has been kind of monotonous and time consuming. Today, I have completed the first piece of automation for that.

I had already automated the tracking of completed ebay auctions several years ago. I had a page where I entered the auction id and the server then went out and gathered the information on the auction by parsing the ebay web page HTML related to the auction. This new requirement was simply adding a process to go out and do the same thing while the auction was still active. I then need not do the same thing when the auction ended but I just need to add the outcome information. That means only slightly more manual work for me in order to add a significant new feature to the site. Of course, there is the additional work related to tracking parts in addition to cars.

While doing this, I took the opportunity to change the triplewhitefox.com server process that harvests the data from ebay. Parsing the web page HTML from ebay proved to be problematic over time. Being a web page, it was tied to the presentation and layout of the page. A couple times in the past, when they changed the look of their listings, my process broke because of this. To solve this I joined the ebay developers program which allows me to make programmatic calls using their Shopping API which return very well defined results. When I first wrote this stuff to use the HTML the developers program was available but had more strict requirements for joining that, as a casual user, I felt were too much of a barrier for me.

Now, the barrier to entry is lower. It costs nothing and there is no need to get their approval of my code before I can call their API. So, here’s what this looks like behind the scenes.

I use an administrative screen to enter the auction id I would like to track. I specify what area the auction is related to (’92 feature cars, ’93 feature cars, ’90 7-up cars, other cars and parts). Through this classification I can later look at cross segments of the information. This is what ultimately allows me to generate the where are they? pages. Right now I only do the ’92 and ’93 cars but I can easily do the ’90 cars in the future.

(click on each image for a larger view)

Adding an ebay listing

When I submit this form, the system then goes out and uses the aforementioned ebay Shopping API in order to get the details. I then edit the auction details. This allows me to clean up any data that does not come in correctly. These are usually very minimal changes. For example, sometimes the transmission is wrong on the 1992 cars.

Editing an ebay listing

When I save the results, it gets immediately added to the for sale page. It is the second entry here.

ebay listings

As auctions pass their end date, they automatically drop off of the ‘for sale’ page that you see but they still appear on my administrators version of that page. Here, in my view, they are highlighted in light red.

ebay listings with ended entries

I can then edit the auction using the admin link that only I see. That admin links takes me back to the edit screen in the second screenshot. This is where I add the closing bid information, save it and it then gets reflected immediately on the “where are they?” page.

2 Comments

Add a Comment

Your email address will not be published. Required fields are marked *