使用 eBay api 查找单词的所有变体

Find all variations of word with eBay api

我想实现这个:

如果输入是 "diamond",它需要在 eBay 中搜索以 d 开头的单词 diamond 的每个变体。 (Daimond、diaomnd 等)寻找列出错误的人。

喜欢这个网站:auctionbloopers.com

我试过使用api。我被困在这里。我不知道如何找到所有变体。

我的代码:

    <script type="text/javascript">
    var ebaySearch_onload = window.onload;
    var ebaySearchCallback = null;
    window.onload = function(a, b, c, d) {
        ebaySearchCallback = function(data) {
            var url = data.findItemsByKeywordsResponse[0].itemSearchURL[0];
            window.location.href = url;
        };

        jQuery(function($) {
            $('#ebaySearchForm').submit(function() {

                $('#ebayLoadingSpinner').html('Loading... Please wait.');

                var url = 'http://svcs.ebay.com/services/search/FindingService/v1'
                    + '?OPERATION-NAME=findItemsByKeywords'
                    + '&SERVICE-VERSION=1.0.0'
                    + '&SECURITY-APPNAME=MYKEY'
                    + '&GLOBAL-ID=EBAY-' + $('#ebayCountrySelect').val()
                    + '&RESPONSE-DATA-FORMAT=JSON'
                    + '&REST-PAYLOAD'
                    + '&callback=ebaySearchCallback'
                    + '&keywords=' + encodeURIComponent($('#ebaySearchInput').val())
                    + '&paginationInput.entriesPerPage=10';

                var script = document.createElement('script');
                script.src = url;
                document.body.appendChild(script);

                return false;
            });
        });

        if('function' == typeof ebaySearch_onload) {
            ebaySearch_onload(a, b, c, d);
        }
    }
    </script>

    <form id="ebaySearchForm" class="form search-form">
            <div class="form-field">
                <label for="ebaySearchInput" style="color: #000;">Search:</label>
                <input id="ebaySearchInput" type="text" maxlength="200" required="required">
                <input type="submit" value="Go">
                <select id="ebayCountrySelect">
                    <option value="US" selected="selected">eBay.com
                    <option value="AT">eBay.at
                    <option value="FRBE">eBay.be
                    <option value="ENCA">eBay.ca
                    <option value="CH">eBay.ch
                    <option value="GB">eBay.uk
                    <option value="AU">eBay.au
                    <option value="DE">eBay.de
                    <option value="ES">eBay.es
                    <option value="FR">eBay.fr
                    <option value="IE">eBay.ie
                    <option value="IT">eBay.it
                    <option value="NL">eBay.nl
                </select>
            </div>
            <div id="ebayLoadingSpinner" style="text-align: center; padding-top: 15px; font-weight: bold; color: #333; padding-right: 120px;"></div>
        </form>

查看代码,它只是在 Ebay 中搜索词条,例如输入的词,看起来开发人员只是简单地获取您在其形式中搜索的词,并通过多种方式手动更改它,例如:

此处使用的示例是 Dean

0:由于 lower/upper 大小写无关紧要,所以全部小写

1: 去掉每个位置的一个字母(ean, dan, den, dea)

2:在每个位置切换一个字母(edan, daen, dena)

3: 将值 n 替换为 (n+1) (ddan, deen, de aa)

4:在(n)处添加值n (ddean, deean, deaa n, deann)

开发人员不使用像 Javascript 这样的客户端脚本语言,但更可能是 PHP 或我们看不到的 C++,因此您可以重新创建代码,但它可以使用 "String".substring();

的变体在 Javascript 中轻松完成

我认为您不能使用 eBay API 为您创建排列。相反,您可能必须自己计算那些拼写 permutations/variations。然后像往常一样简单地将它发送到 eBay API,例如通过标准的 findItemsAdvanced 调用,可能通过长 OR 字符串。