caroso1222 / amazon-autocomplete

🚀 Unlock the full power of the Amazon autocompletion engine right into your search input. JavaScript Plugin.
https://carlosroso.com/amazon-autocomplete
MIT License
399 stars 47 forks source link

Feature request: Allow filter using search-alias field #6

Open QzSG opened 7 years ago

QzSG commented 7 years ago

Was messing around with amazon and found out that it is possible to filter search results based on their main departments. Let me explain.

You know how when using amazon you can select the department like books/toys & games etc in the search bar? Some network requests capturing and html source fiddling led me to believe filtering/searching by department is possible, albeit only for either one or all departments.

If you view the source of the dropdown selector you find this:

<select class="nav-search-dropdown searchSelect" data-nav-digest="" data-nav-selected="0" id="searchDropdownBox" name="url" tabindex="18" title="Search in" style="top: 0px;">
<option selected="selected" value="search-alias=aps">All Departments</option>
<option value="search-alias=alexa-skills">Alexa Skills</option>
<option value="search-alias=instant-video">Amazon Video</option>
<option value="search-alias=warehouse-deals">Amazon Warehouse Deals</option>
<option value="search-alias=appliances">Appliances</option>
<option value="search-alias=mobile-apps">Apps &amp; Games</option>
<option value="search-alias=arts-crafts">Arts, Crafts &amp; Sewing</option>
<option value="search-alias=automotive">Automotive Parts &amp; Accessories</option>
<option value="search-alias=baby-products">Baby</option>
<option value="search-alias=beauty">Beauty &amp; Personal Care</option>
<option value="search-alias=stripbooks">Books</option>
<option value="search-alias=popular">CDs &amp; Vinyl</option>
<option value="search-alias=mobile">Cell Phones &amp; Accessories</option>
<option value="search-alias=fashion">Clothing, Shoes &amp; Jewelry</option>
<option value="search-alias=fashion-womens">&nbsp;&nbsp;&nbsp;Women</option>
<option value="search-alias=fashion-mens">&nbsp;&nbsp;&nbsp;Men</option>
<option value="search-alias=fashion-girls">&nbsp;&nbsp;&nbsp;Girls</option>
<option value="search-alias=fashion-boys">&nbsp;&nbsp;&nbsp;Boys</option>
<option value="search-alias=fashion-baby">&nbsp;&nbsp;&nbsp;Baby</option>
<option value="search-alias=collectibles">Collectibles &amp; Fine Art</option>
<option value="search-alias=computers">Computers</option>
<option value="search-alias=courses">Courses</option>
<option value="search-alias=financial">Credit and Payment Cards</option>
<option value="search-alias=digital-music">Digital Music</option>
<option value="search-alias=electronics">Electronics</option>
<option value="search-alias=gift-cards">Gift Cards</option>
<option value="search-alias=grocery">Grocery &amp; Gourmet Food</option>
<option value="search-alias=handmade">Handmade</option>
<option value="search-alias=hpc">Health, Household &amp; Baby Care</option>
<option value="search-alias=local-services">Home &amp; Business Services</option>
<option value="search-alias=garden">Home &amp; Kitchen</option>
<option value="search-alias=industrial">Industrial &amp; Scientific</option>
<option value="search-alias=digital-text">Kindle Store</option>
<option value="search-alias=fashion-luggage">Luggage &amp; Travel Gear</option>
<option value="search-alias=luxury-beauty">Luxury Beauty</option>
<option value="search-alias=magazines">Magazine Subscriptions</option>
<option value="search-alias=movies-tv">Movies &amp; TV</option>
<option value="search-alias=mi">Musical Instruments</option>
<option value="search-alias=office-products">Office Products</option>
<option value="search-alias=lawngarden">Patio, Lawn &amp; Garden</option>
<option value="search-alias=pets">Pet Supplies</option>
<option value="search-alias=pantry">Prime Pantry</option>
<option value="search-alias=software">Software</option>
<option value="search-alias=sporting">Sports &amp; Outdoors</option>
<option value="search-alias=tools">Tools &amp; Home Improvement</option>
<option value="search-alias=toys-and-games">Toys &amp; Games</option>
<option value="search-alias=vehicles">Vehicles</option>
<option value="search-alias=videogames">Video Games</option>
<option value="search-alias=wine">Wine</option>
</select>

Some of them seem to be main departments plus some sub departments too. The search-alias seems to be added to the completion engine fields if any of them are selected.

For example lets say I want to search for books, you get search-alias=stripbooks appended to the completion engine request. If I want to search for the book "lab girl". An example completion engine call would be

https://completion.amazon.com/search/complete?method=completion&mkt=1&client=amazon-search-ui&search-alias=stripbooks&q=lab%20girl

I can see how this would be useful and certainly adds more functionality to the existing project

caroso1222 commented 7 years ago

Hey that's pretty impressive! Thanks for noting that. I'm definitely working on it. Labeling it as New Feature and will be releasing this feature soon. Thanks again, that's a pretty good contribution.