hello world!
Ravi de vous rencontrer, je m'appelle alpacatom. Je suis étudiant diplômé de M1. Enfin, j'ai un peu de temps au-delà du point culminant du journal, je le posterai donc pour la première fois au détriment de précieux samedis et dimanches. En tant que nouveau venu, veillez chaleureusement. Nous vous serions reconnaissants si vous pouviez nous donner des suggestions d'amélioration et des opinions. Cette fois, j'ai créé un outil pour comparer les prix des produits sur Amazon dans 6 pays en utilisant l'API Amazon Product Advertising et l'API Currency. Bien entendu, les frais de port sont inclus.
Remarque: préparez-vous, car il peut être assez compliqué de se préparer à l'utilisation.
"Je veux un disque Blu-ray de la" Big Bang Theory "préférée de tout le monde" "→" Mais (les étudiants diplômés) n'ont pas d'argent "→" Ça!? Amazon aux États-Unis est moins cher que le Japon? "← Maintenant, ici Je n'ai pas vraiment compris le résultat et je savais que les prix sur Amazon différaient d'un pays à l'autre, alors je l'ai fait.
Astuces: __ Big Bang Theory Qu'est-ce que __? Drame comique à l'étranger super intéressant. Ce travail peut être recommandé à la fois pour ceux qui visent à être chercheurs et pour ceux qui ne le sont pas, en particulier pour les étudiants diplômés, c'est un incontournable __. Au fait, j'ai passé deux semaines jusqu'à la saison 1-6. (Netflix est le meilleur!)
Plus tard, je pense acheter un _Superdry_bag ... et ainsi de suite.
Référence: Superdry
Currency API Commencera le sujet principal. C'est une API pour obtenir des informations sur les taux de change, et vous pouvez l'utiliser en vous inscrivant. Cette fois, j'utilise la version gratuite. https://currencylayer.com/ Maintenant, récupérez la clé API pour la couche Devise.
Amazon Product Advertising API J'ai fait référence à l'article suivant.
C'est un moment crucial. Enregistrez le pays que vous souhaitez comparer et obtenez la balise Associate. (Cette fois, il est basé sur le Japon, donc le Japon est essentiel.) Selon un certain article de StackOverflow, il a été posté qu'il ne peut être utilisé que s'il est enregistré dans chaque pays, donc inscrivez-vous dans le pays requis "tous".
Comme il a été développé dans Eclipse, si vous utilisez Eclipse, importez le projet extrait de Github (https://github.com/alpacatom/ComparingPrices-via-AmazonAPI) et utilisez la clé obtenue ci-dessus (Currency.java). Et SearchAnItem.java) Vous pouvez l'utiliser en le définissant. La recherche a certains paramètres obligatoires.
Seule la fonction principale est répertoriée ci-dessous. Le flux consiste à extraire la table d'expédition du fichier CSV et à accéder à l'API Currency et à l'API Amazon pour obtenir le taux de change et le prix des informations sur le produit. Pour plus d'informations, visitez Github (https://github.com/alpacatom/ComparingPrices-via-AmazonAPI)
AmazonAPI.java
public static void main(String[] args) {
// Initializing
ItemData arr[] = new ItemData[ItemData.COUNTRY_NUM];
for(int i=0;i<ItemData.COUNTRY_NUM;i++){
arr[i] = new ItemData();
}
String line[] = new String[ShipmentCharge.CSV_MAX_LINE_SIZE];
ShipmentCharge SC[][] = new ShipmentCharge[ItemData.COUNTRY_NUM][ShipmentCharge.CSV_MAX_LINE_SIZE];
// Get Shipment Charges
for(int j=0;j<ItemData.COUNTRY_NUM;j++){
line = ItemData.ReadFile(ShipmentCharge.ShipmentTXT[j]);
String stmp[] = new String[ShipmentCharge.CSV_MAX_COLUM_SIZE];
int k=0;
while(line[k]!=null){
stmp = MyParser.parseCSV(line[k]);
SC[j][k] = ShipmentCharge.MakeTable(SC[j][k], stmp, j);
k++;
}
}
// Calculate the lowest Shipment Charges each countires.
Double[] dtmp = new Double[6];
dtmp = ShipmentCharge.LowestCalcSC(SC,ItemData.category);
// Get Currencies via currencylayer
String json = Currency.GetCurrencies();
Double CurrenciesRate[] = new Double[ItemData.COUNTRY_NUM];
CurrenciesRate = MyParser.getCurrencies(json);
// Get Price and Country via Amazon Product API
String xml[] = new String[ItemData.COUNTRY_NUM];
final String tag[] = {"CurrencyCode","FormattedPrice"};
for(int i=0;i<ItemData.COUNTRY_NUM;i++){
arr[i].setCountry(ItemData.Countries[i]);
xml[i] = SearchAnItem.SearchByID(ItemData.getItemID(), i);
arr[i].setShitpment(dtmp[i]);
arr[i].setCurrenciesCode(MyParser.getTagElmFromXML(xml[i],tag[0]));
arr[i].setPrice( MyParser.Convert2Double(MyParser.getTagElmFromXML(xml[i],tag[1])));
arr[i].setCurrenciesRate(CurrenciesRate[i]);
arr[i].PrintAll();
}
}
Le résultat du calcul est affiché en dollars USD. Donc, plus le TOTAL est bas, plus il est "bon marché". Vous trouverez ci-dessous le prix BD (frais de port compris) pour Big Bang ★ Theory Saison 1-9. Comme vous pouvez le voir, si vous n'avez pas besoin de japonais (avec sous-titres anglais), vous obtiendrez 115 * (Max-min) = 2990 yens.
Merci d'avoir lu jusqu'ici, et je le posterai si je fais encore quelque chose.
Amazon Product API document http://docs.aws.amazon.com/AWSECommerceService/latest/DG/Welcome.html Currencylayer API document https://currencylayer.com/documentation Entrée / sortie de fichier https://www.caveofprogramming.com/java/java-file-reading-and-writing-files-in-java.html Expressions régulières https://docs.oracle.com/javase/jp/6/api/java/util/regex/Pattern.html http://qiita.com/ymsr5612/items/7c8811b5cf37d700adc4 Encodage / décodage Base64 (j'étais accro à ne pas pouvoir importer le pot dans Eclipse ici) http://criticalbreak5.seesaa.net/article/420080828.html XML via DOM (pas utilisé après tout) http://www.fireproject.jp/feature/xml/programing/java-dom.html JSON http://www.task-notes.com/entry/20150919/1442639772
Recommended Posts