Skip to content

Commit b91cf02

Browse files
committed
added support for Amazon
1 parent 2991070 commit b91cf02

5 files changed

Lines changed: 144 additions & 20 deletions

File tree

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Alfred search suggest workflow for various popular websites. Inspired by the off
99
* [Google](#google)
1010
* [Wikipedia](#wikipedia)
1111
* [Wolfram|Alpha](#wolframalpha)
12+
* [Amazon](#amazon)
1213
* [Pixiv](#pixiv)
1314
* [Baidu (百度)](#baidu)
1415
* [Zhihu (知乎)](#zhihu)
@@ -41,6 +42,12 @@ Support direct term suggestions. [Proxy setting](#proxy-setting) is available in
4142

4243
![wolframalpha](screenshots/wolframalpha.png)
4344

45+
### Amazon
46+
47+
Support basic suggestions. [Proxy setting](#proxy-setting) is available in the workflow environment variables.
48+
49+
![amazon](screenshots/amazon.png)
50+
4451
### Pixiv
4552

4653
Support basic suggestions. [Proxy setting](#proxy-setting) is available in the workflow environment variables.
@@ -108,6 +115,7 @@ If you want an alternative to search exactly what you typed, you can add custom
108115
* Google: `built-in`
109116
* Wikipedia: `built-in`
110117
* Wolfram|Alpha: `built-in`
118+
* Amazon: `built-in`
111119
* Pixiv: `https://www.pixiv.net/search.php?word={query}`
112120
* Baidu: `https://www.baidu.com/s?wd={query}`
113121
* Zhihu: `https://www.zhihu.com/search?q={query}`

screenshots/amazon.png

257 KB
Loading
83.4 KB
Loading

src/amazon.php

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?php
2+
use Alfred\Workflows\Workflow;
3+
4+
require_once('vendor/joetannenbaum/alfred-workflow/Workflow.php');
5+
require_once('vendor/joetannenbaum/alfred-workflow/Result.php');
6+
require_once('util/request.php');
7+
8+
const ICON = '3444F1D5-FE79-4B5F-A37D-DAA45D7D02F0.png';
9+
10+
$wf = new Workflow;
11+
12+
$response = request('https://completion.amazon.com/search/complete?mkt=1&search-alias=aps&q='.urlencode($query), $opt);
13+
$json = json_decode($response)[1];
14+
15+
foreach ($json as $data) {
16+
$wf->result()
17+
->title($data)
18+
->subtitle('Search Amazon for '.$data)
19+
->arg($data)
20+
->icon(ICON)
21+
->autocomplete($data);
22+
}
23+
24+
echo $wf->output();

src/info.plist

Lines changed: 112 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,19 @@
2121
<false/>
2222
</dict>
2323
</array>
24+
<key>3444F1D5-FE79-4B5F-A37D-DAA45D7D02F0</key>
25+
<array>
26+
<dict>
27+
<key>destinationuid</key>
28+
<string>D3798DBA-B371-47CF-8AB5-E3837B8F876E</string>
29+
<key>modifiers</key>
30+
<integer>0</integer>
31+
<key>modifiersubtext</key>
32+
<string></string>
33+
<key>vitoclose</key>
34+
<false/>
35+
</dict>
36+
</array>
2437
<key>63F60794-BB56-4415-9372-BAF974C3A7E1</key>
2538
<array>
2639
<dict>
@@ -374,6 +387,71 @@ require_once('wolframalpha.php');</string>
374387
<key>version</key>
375388
<integer>1</integer>
376389
</dict>
390+
<dict>
391+
<key>config</key>
392+
<dict>
393+
<key>alfredfiltersresults</key>
394+
<false/>
395+
<key>alfredfiltersresultsmatchmode</key>
396+
<integer>0</integer>
397+
<key>argumenttrimmode</key>
398+
<integer>0</integer>
399+
<key>argumenttype</key>
400+
<integer>0</integer>
401+
<key>escaping</key>
402+
<integer>36</integer>
403+
<key>keyword</key>
404+
<string>ama</string>
405+
<key>queuedelaycustom</key>
406+
<integer>3</integer>
407+
<key>queuedelayimmediatelyinitially</key>
408+
<false/>
409+
<key>queuedelaymode</key>
410+
<integer>0</integer>
411+
<key>queuemode</key>
412+
<integer>2</integer>
413+
<key>runningsubtext</key>
414+
<string>Retrieving search suggestions ...</string>
415+
<key>script</key>
416+
<string>$query = "{query}";
417+
$opt[CURLOPT_PROXY] = getenv('proxy');
418+
419+
require_once('amazon.php');</string>
420+
<key>scriptargtype</key>
421+
<integer>0</integer>
422+
<key>scriptfile</key>
423+
<string></string>
424+
<key>subtext</key>
425+
<string>Search Amazon with Suggestions</string>
426+
<key>title</key>
427+
<string>Search Amazon</string>
428+
<key>type</key>
429+
<integer>1</integer>
430+
<key>withspace</key>
431+
<true/>
432+
</dict>
433+
<key>type</key>
434+
<string>alfred.workflow.input.scriptfilter</string>
435+
<key>uid</key>
436+
<string>3444F1D5-FE79-4B5F-A37D-DAA45D7D02F0</string>
437+
<key>version</key>
438+
<integer>2</integer>
439+
</dict>
440+
<dict>
441+
<key>config</key>
442+
<dict>
443+
<key>browser</key>
444+
<string></string>
445+
<key>searcher</key>
446+
<integer>1635213677</integer>
447+
</dict>
448+
<key>type</key>
449+
<string>alfred.workflow.action.systemwebsearch</string>
450+
<key>uid</key>
451+
<string>D3798DBA-B371-47CF-8AB5-E3837B8F876E</string>
452+
<key>version</key>
453+
<integer>1</integer>
454+
</dict>
377455
<dict>
378456
<key>config</key>
379457
<dict>
@@ -997,21 +1075,28 @@ require_once('moegirlpedia.php');</string>
9971075
<key>xpos</key>
9981076
<integer>270</integer>
9991077
<key>ypos</key>
1000-
<integer>450</integer>
1078+
<integer>590</integer>
10011079
</dict>
10021080
<key>0528CC1E-2E67-43AF-9016-1B7A76A1CF96</key>
10031081
<dict>
10041082
<key>xpos</key>
10051083
<integer>270</integer>
10061084
<key>ypos</key>
1007-
<integer>590</integer>
1085+
<integer>730</integer>
10081086
</dict>
10091087
<key>186480B7-9F2F-43AD-9994-A9B8E053ADE5</key>
10101088
<dict>
10111089
<key>xpos</key>
10121090
<integer>50</integer>
10131091
<key>ypos</key>
1014-
<integer>1150</integer>
1092+
<integer>1290</integer>
1093+
</dict>
1094+
<key>3444F1D5-FE79-4B5F-A37D-DAA45D7D02F0</key>
1095+
<dict>
1096+
<key>xpos</key>
1097+
<integer>50</integer>
1098+
<key>ypos</key>
1099+
<integer>450</integer>
10151100
</dict>
10161101
<key>5125D249-AC10-405F-9EE5-63362700B29F</key>
10171102
<dict>
@@ -1032,7 +1117,7 @@ require_once('moegirlpedia.php');</string>
10321117
<key>xpos</key>
10331118
<integer>50</integer>
10341119
<key>ypos</key>
1035-
<integer>1010</integer>
1120+
<integer>1150</integer>
10361121
</dict>
10371122
<key>67D1CDF9-CA40-4D8E-B66C-E0FF18FCE3CE</key>
10381123
<dict>
@@ -1046,21 +1131,21 @@ require_once('moegirlpedia.php');</string>
10461131
<key>xpos</key>
10471132
<integer>50</integer>
10481133
<key>ypos</key>
1049-
<integer>590</integer>
1134+
<integer>730</integer>
10501135
</dict>
10511136
<key>7999A242-8DB6-41F9-BAD7-78C3E4CC0C41</key>
10521137
<dict>
10531138
<key>xpos</key>
10541139
<integer>50</integer>
10551140
<key>ypos</key>
1056-
<integer>1570</integer>
1141+
<integer>1710</integer>
10571142
</dict>
10581143
<key>7C5A1AA4-8766-42A7-ADC5-6B91963B3CD9</key>
10591144
<dict>
10601145
<key>xpos</key>
10611146
<integer>50</integer>
10621147
<key>ypos</key>
1063-
<integer>1430</integer>
1148+
<integer>1570</integer>
10641149
</dict>
10651150
<key>80FCED49-07AA-4C15-9B49-24A52B3AF5D6</key>
10661151
<dict>
@@ -1074,56 +1159,56 @@ require_once('moegirlpedia.php');</string>
10741159
<key>xpos</key>
10751160
<integer>50</integer>
10761161
<key>ypos</key>
1077-
<integer>730</integer>
1162+
<integer>870</integer>
10781163
</dict>
10791164
<key>89D407F2-9C8D-403B-9503-AE755F3474B2</key>
10801165
<dict>
10811166
<key>xpos</key>
10821167
<integer>270</integer>
10831168
<key>ypos</key>
1084-
<integer>1150</integer>
1169+
<integer>1290</integer>
10851170
</dict>
10861171
<key>A10DF307-B927-4060-A800-9B2A6EC4CA52</key>
10871172
<dict>
10881173
<key>xpos</key>
10891174
<integer>270</integer>
10901175
<key>ypos</key>
1091-
<integer>870</integer>
1176+
<integer>1010</integer>
10921177
</dict>
10931178
<key>A66D4C48-6D6D-4531-AF51-8463E488EEB2</key>
10941179
<dict>
10951180
<key>xpos</key>
10961181
<integer>50</integer>
10971182
<key>ypos</key>
1098-
<integer>450</integer>
1183+
<integer>590</integer>
10991184
</dict>
11001185
<key>A76FF79E-3778-4855-93AA-20969F1A152A</key>
11011186
<dict>
11021187
<key>xpos</key>
11031188
<integer>270</integer>
11041189
<key>ypos</key>
1105-
<integer>1290</integer>
1190+
<integer>1430</integer>
11061191
</dict>
11071192
<key>A8AA5019-512C-4773-83FC-35FEA14DD158</key>
11081193
<dict>
11091194
<key>xpos</key>
11101195
<integer>270</integer>
11111196
<key>ypos</key>
1112-
<integer>1430</integer>
1197+
<integer>1570</integer>
11131198
</dict>
11141199
<key>AE15F1F6-37B0-4A47-BEE1-975354A81227</key>
11151200
<dict>
11161201
<key>xpos</key>
11171202
<integer>50</integer>
11181203
<key>ypos</key>
1119-
<integer>870</integer>
1204+
<integer>1010</integer>
11201205
</dict>
11211206
<key>B1C4E5F1-FE5D-4505-9AD6-3F12A4F4ACC8</key>
11221207
<dict>
11231208
<key>xpos</key>
11241209
<integer>50</integer>
11251210
<key>ypos</key>
1126-
<integer>1290</integer>
1211+
<integer>1430</integer>
11271212
</dict>
11281213
<key>B8FFA3AB-AD7D-4316-A84F-5958A671D4FF</key>
11291214
<dict>
@@ -1139,39 +1224,46 @@ require_once('moegirlpedia.php');</string>
11391224
<key>ypos</key>
11401225
<integer>310</integer>
11411226
</dict>
1227+
<key>D3798DBA-B371-47CF-8AB5-E3837B8F876E</key>
1228+
<dict>
1229+
<key>xpos</key>
1230+
<integer>270</integer>
1231+
<key>ypos</key>
1232+
<integer>450</integer>
1233+
</dict>
11421234
<key>D5E649CF-505D-458A-913B-ABE9A226E9FA</key>
11431235
<dict>
11441236
<key>xpos</key>
11451237
<integer>270</integer>
11461238
<key>ypos</key>
1147-
<integer>730</integer>
1239+
<integer>870</integer>
11481240
</dict>
11491241
<key>DB57612B-C4F5-4CF6-8A5D-29C86E40FAB1</key>
11501242
<dict>
11511243
<key>xpos</key>
11521244
<integer>270</integer>
11531245
<key>ypos</key>
1154-
<integer>1010</integer>
1246+
<integer>1150</integer>
11551247
</dict>
11561248
<key>DDC3EC54-50D5-429B-BFE0-3C06F14766AE</key>
11571249
<dict>
11581250
<key>xpos</key>
11591251
<integer>270</integer>
11601252
<key>ypos</key>
1161-
<integer>1570</integer>
1253+
<integer>1710</integer>
11621254
</dict>
11631255
</dict>
11641256
<key>variables</key>
11651257
<dict>
11661258
<key>proxy</key>
1167-
<string></string>
1259+
<string>http://127.0.0.1:1087</string>
11681260
</dict>
11691261
<key>variablesdontexport</key>
11701262
<array>
11711263
<string>proxy</string>
11721264
</array>
11731265
<key>version</key>
1174-
<string>1.8</string>
1266+
<string>1.9</string>
11751267
<key>webaddress</key>
11761268
<string>https://github.com/AkikoZ/alfred-web-search-suggest</string>
11771269
</dict>

0 commit comments

Comments
 (0)