How does one find prices from Amazon's site programmatically? [closed] - amazon-marketplace

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
The community reviewed whether to reopen this question 1 year ago and left it closed:
Original close reason(s) were not resolved
Improve this question
So Amazon has lots of different APIs for different things, and it's hard to find the one I'm looking for.
I have a client that sells things and checks Amazon's lowest price to know where to price their things (slightly under the lowest thing there). They want functionality integrated into their inventory system that would automatically find the product's lowest price on Amazon and display that. I was wondering which AWS service is best suited to this task.
I see the Product Advertising API, and that looks like the closest thing right now. Is that so?
I don't really want to rely on a scraper when Amazon provides a programmatic interface to this information somewhere, which I know they do because many other products have this. Some say that they can just download a dump of Amazon's products and use that locally -- I'm open to that option too if anyone can point me in its direction.

Yes, the technically appropriate API is the Product Advertising API, using the ItemLookup/ItemSearch operations or the Seller* operations.
https://affiliate-program.amazon.com/gp/advertising/api/detail/main.html
I would also advise you to check the licensing agreement for this API, notably clause 4 (i).

You can use the Amazon Marketplace Web Service (api, description)
This service can group all of the available offers into ‘buckets’ and shows the lowest price from each bucket bucket.
Each bucket has a unique combination of:
Sub-Condition (New, Like New, Very Good, Good, Acceptable)
FulfillmentChannel (FBA or Merchant-Fulfilled)
ShipsDomestically (True, False, Unknown)
ShippingTime (0-2 days, 3-7 days, 8-13 days, 14 or more days)
SellerPositiveFeedbackRating (98-100%, 95-97%, 90-94%, 80-89%,
70-79%, Less than 70%, Just launched)
Someone made a really cool demo of the API here

We cannot get the entire amazon products using API.They had made certain restrictions to the usage of API such that it would be more relevant to advertising use case only.

I wrote that small python module to achieve such a task: https://github.com/iMilnb/awstools/blob/master/mods/awsprice.py
Basically, it fetches the prices from Amazon's website and convert them to a nice and parsable python dict.
I wrote two example functions that show how to use the resulting dict to dump an instance price on various terms along with a CSV converter.

There is a reply to a similar question which lists all the .js files containing the prices, which are barely JSON files (with only a callback(...); statement to remove).
Here is an exemple for Linux On Demand prices : http://aws-assets-pricing-prod.s3.amazonaws.com/pricing/ec2/linux-od.js
(Get the full list directly on that reply)

Related

Warehouse Management System overview program [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Good morning SO people,
First a bit of general information:
I work in a warehouse with goods we manage with a WMS system which I operate. This program is on a VPN thats hosted in Switserland while i'm in Holland.
I get also orders in this program through an EDI. I gather groups of orders together to create a full truck. After that they are picked by the warehouse. and stored until it's ready to be loaded.
As the WMS program is just as stated a WMS program and not designed to have an overview of which good are ready to be loaded with which reference at which dock etc, we've created an excel 2010 table which has the following information:
Customer, Truck destination, dock loading, time to be ready, time ready, truck name, additional info, number of colli, Picked today?, load today?, wms groep number and scan-out list.
The above information is entered in the table for each truck and we keep an excelfile for each week which has 7 sheets for each day. I keep track each day what we have picked that day and which have been loaded or not. Because of preformance tracking, this needs to be almost perfect. If an order has been picked today the "picked today?"-flag will be set, and if it has been loaded than the "loaded today"-flag will be set. If the goods are picked, but not loaded that day, that row will be copied to the next day with the "Picked today?"-flag set to false.
In this manner we have an overview what goods needs to be picked and which are still waiting to be loaded. So that we dont loose track of any goods
I now this is a lot of information, but I believe this helps in solving my problem.
The problem is as follows:
I'm not the only one in this excel sheet. Each day around 6 people have this file open to either actively edit and save very often (like me and my colleague) or the truck planner who check regularly how far we are. They only do saves
As such we have the file open in "Shared"-mode which you all know is bugged. We get a lot of "File in use"" errors when saving.
Also, searching for a list of trucks to one destination in this manner can't be done, since there are multiple excel files. We can track day to day, but thats about it.
Also preformance over a period is out of the question. Or we have to keep track of the performance per week in a extra excelfile.
So my question now is:
Do you guys know any program out there which can do all this, or otherwise has most of the same functionality. Which stores all data in the same database. Also multiuser functionality and per user read-only access would be a nice addition.
Also Office 365 Co-authoring is not an option. My internet through the VPN isn't very fast and the cells need to be editted fast to keep the warehouse process from stopping (Time is money etc)
I do have experience with programming in Delphi, so I could in theorie create my own databse program (After a year of programming), but why re-invent the wheel, right ?
Thank you very much for reading this long tekst, and I hope someone can help me.
And if you have any questions or need clarification, feel free to ask
Your question will probably be closed since this is not a programming question. (See What can I ask about here?), but an easy answer based on the requirements (basic, typical database functionality) and the fact that this is a programming site:
Microsoft Access can do everything you want.
If co-authoring is a problem then don't co-author or improve your network connection, or else any database's performance will be impacted.

Looking for ICD10 API [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 1 year ago.
Improve this question
Any body knows of a good ICD10 API to do diagnostic code lookups that can recommend. I am currently building a simple app to tag patients with medical condition and the idea is to have a lookup API where one can type asthma for example and get back all the different ICD10 codes for asthma
My R package, icd converts ICD-9 and ICD-10 codes to descriptions, in addition to its main function of finding comorbidities. Documentation at https://jackwasey.github.io/icd/ , and code at https://github.com/jackwasey/icd . It does this using the function explain_code. It currently uses ICD-10-CM, i.e. the USA billing adapted ICD-10 code set, which in general is more specific than the canonical WHO version, but does have some areas of less detail.
E.g. WHO ICD-10 has HIV disease resulting in Pneumocystis jirovecii pneumonia as a subdivision for HIV infection, whereas ICD-10-CM just has HIV. On the other hand, ICD-10-CM has Sucked into jet engine, subsequent encounter whereas the WHO is happy with the terribly vague: Person on ground injured in air transport accident.
The volume of data for all the descriptions is not very high, just handful of megabytes, so although an API may seem convenient, you might consider just having all the data and not having to ping some random server.
I'm going to assume you're ignoring all of the usual stuff around variations of spelling of medical terms, proper terms vs. colloquialisms, labels vs. descriptions, etc. that get to be a pain with term / code finders.
If you want to use a hosted option and are OK with the terms of use, you could use UMLS (https://uts.nlm.nih.gov/home.html#apidocumentation). It's a great resource, but the use case you're describing isn't necessarily what it's intended to address.
Personally - and I usually don't like to roll my own stuff - I'd consider doing your own thing. You could do something focused on your needs and tailor it to any specific behaviors you might want (like preferring specific codes based on an organization - EX: billing preference). You could also probably make it far, far more ... perky ... and address short forms of terms (EX: synonyms like "DVT") or misspellings ("asthma" vs. "athsma"). If you go that route, I'd suggest considering getting your hands on the ICD-10 code info and then mashing it into Elastic Search. You could extend the data by mixing it with other info and really make it hum. And Elastic is wicked fast.
That's just my $0.02, though.
There is a project called "Unified Medical Language System (UMLS)", funded by NIH and apparently they are working on a RESTful Web API for medical terms.
https://documentation.uts.nlm.nih.gov/rest/home.html
I didn't work with their API yest and the samples I am seeing on their website sounds like they are more SNOMED-CT oriented.
The option I would go for is to get the whole ICD-10-CM from CMS and build my own Web API.
https://www.cms.gov/Medicare/Coding/ICD10/2016-ICD-10-CM-and-GEMs.html
you can check the full documentation from WHO https://icd.who.int/icdapi

User stories for functionality that cross-cuts multiple presentation modes? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
What's a good way to capture user stories when you have features that are common across multiple UI modes?
For example, imagine a commercial flight information system, something someone might use to answer the question "When is flight UA211 expected to land?"
As is often the case, the feature of providing schedule information is common underlying functionality, even though you might ask for it via a desktop web browser, a mobile browser (where you want to apply different style to make it more usable), and maybe even via SMS shortcodes.
Now, that certainly could be a single user story ("As someone meeting a traveller, I want to see flight arrival information so that I can be at the airport on time"). But that seems wrong (and would probably be an epic story, anyway).
You can make it separate user stories ("As a desktop user...", "As a smartphone user...", etc), which I've done in the past, and the team just knows to estimate the first one to include all of functionality, and the subsequent ones to estimate only UI implementation.
A third option is to make the underlying functionality a story isolated from the presentation layer, and then have UI stories: "As a flight info system front end, I want to get flight status information so that I can present it to the user", "As a desktop user, I want to see flight arrival... etc". But that seems artificial.
Thoughts?
dwh
I think the problem is that you are trying to tie the UI functionality to the backend too tightly.
For example, if you break it into a simple story:
A user may want to know the flight status given the flight number.
OK, now, given that you implement that, now you can look at which platforms will be calling this, as, one part of agile is not to over-develop, but in this case, if you have a business need to support mobile and desktop devices, then you should look at implementing this as a REST service, since that is the simplest solution for both to work with.
So the REST service solves the first story above.
Now, you will find that there are other specifics for each platform. For example, is there something on the phone that may already have the information, for example, did the traveller go to a trip site and already enter his info, then you may want to go there, assuming that the traveller is in the users contacts.
Or, if the user is just going to enter a flight number and that is it, then why not just do it as a webpage, as that is the simplest approach that supports both concepts. Then, if you have a url that supports GET, and outputs as HTML then you can easily display.
So, my first story was too simple, you may want to consider whether it is possible to return different types of data, so a user may want to have HTML, PDF, json or xml, but for each of these there should be a business need.
Unfortunately it is hard to answer your question as there are too many unknowns, which is why you are having a difficult time. If you ask the wrong question then you do have an epic, but if you can just break it down to a few simple stories then it becomes much easier to solve.
I would recommend the second option.
As you suggested, the first sounds like too much for a single story, and a story should always fit into a single iteration.
With the third option, the big problem is that you aren't delivering business value at the end of the story, which is generally a bad practice.
There are other ways you could split this work though. You could initially develop a very cut-down, barebones version which would work across all clients, and then refine each of them in subsequent stories.

Linkable reporting library for Qt, with editor or easy markup [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Is there a reporting library which can be linked with a Qt application to generate and print invoices (from within my own application, no seperate tool). The invoices are needed to print instantly, so I have the following requirements:
pipe data to be printed into the reporting library
choose from a predefined reporting template (created inside or outside my app doesn't matter)
integrated report generation inside my application
no preview-before-print - just create an order and print the invoice
based on Linux
document header / footer with delivery instructions, address and slogan
tableized line items, with sub items and line price / item price
order summary (total price, tax)
multiple pages should repeat table headers and show partial sums
nice to have: inclusion of dynamically generated image data
What is not needed/wanted:
Generate reports outside the application from SQL, CSV, or XML datasets
The report generator does not need to do the calculations
The environment is a custom-built POS system for food delivery / catering / restaurant. Orders come in by phone. Invoices are printed as two copies, one for the kitchen to prepare the delivery, one for the customer (and driver who delivers).
I am currently working with RichText-based templates but this is pretty cumbersome and the templates are hard to maintain - so this change is needed. The old application is Qt3 but the new one will be (and has to be) Qt4 - so the reporting library should be compatible with that. I don't want to pull in Gtk or Gnome dependencies.
The database runs on MySQL but doesn't (yet) store the ordering data neither any invoices. Invoices are just archived to the harddisk. This will probably change, but I don't think this matters when I can feed in data manually to the reporting lib.
Update: My POS application is going to be opensourced, so the library should be compatible with GPL or similar.
Have a look at KD Reports:
http://www.kdab.com/index.php?option=com_content&view=article&id=54:kd-reports&catid=35:kd-reports&Itemid=66
It's also available under GPL, although that's not advertised, so it might be necessary to contact KDAB to obtain it.
You can try NCReport, but since version 2.0, it becomes a commercial product.
There is an example found in internet.

API to determine cell carrier? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Is there a free API or some other way to determine what carrier a cell phone number is registered with?
I'd like my application to broadcast text messages without them picking their carrier from a list.
UPDATE:
Interestingly, a coworker found the answer: http://developer.whitepages.com/
UPDATE2:
Well the whitepages license agreement is so restrictive that you can't build an app for it. Any other ideas?
UPDATE3:
At some point, someone removed my Update 2. This puts it back. More importantly as of 10/19/2015 the Terms of Service is still in a state that it should be impossible to legally utilize their services.
Data24-7 offers an API for looking up the carrier for wireless phone numbers. It also returns the email addresses to send SMS and MMS messages to the phone. It's not free, it's $12 per month and $0.006 per lookup.
The link is: http://www.data24-7.com
I know this question is 5 years old already but for those still looking for something, PacificEast (who I work for) offers a Line Identification Append service for US and Canadian numbers that handles local number portability. The service is available as a SOAP API or as a batch service (you send PacificEast your file, they process it and send it back). Besides the carrier, the service will also identify line type (wireless, landline, etc.), whether the number has been ported or not, and some geographic information.
If you are looking for what I was (a way to easily email -> SMS people for a program), I believe the best is going to be to send an email phonenumber#sms-gateway to each carrier for the country. In doing so, the number will only work with one carrier where the number is active at this moment. The other emails will be returned.
If you try to look it up using an online service, you are now relying on the carrier they have in their database, which may be outdated.
You should note that the way to figure out which carrier a number belongs to will be country-specific (though, some countries might use the same scheme, but I'm not sure - I've worked with both the norwegian and swedish portability databases and they're quite different api-wize - and require vpn + authentication).
The information is, at least here, not available to the public - I've seen service providers, network operators and information providers (as in yellow pages) that have access.
But otoh, wouldn't a proper sms gateway service do this for you?
Neustar would be your best bet, they handle lookups, number portability, Do Not Call list, etc... The service is not free but they are the most reliable in the business. Another option might be Twilio
Your biggest problem is that people can now take their numbers with them. So while in the past cell phone carriers had blocks of phone numbers, and probably still do, there's no reliable way to map a specific cell number to a certain carrier.
You can try to screenscrape from a website like http://www.fonefinder.net that does a 'whois' on the number
Here is an example url to scrape. (I verified its really sprint, so that is correct)
http://www.fonefinder.net/findome.php?npa=817&nxx=683&thoublock=2926
I recently wrote one in Ruby that interfaces with the aforementioned FoneFinder.net
https://rubygems.org/gems/FoneFinder --> Ruby Gem page
https://github.com/evinugur/FoneFinder.rb/ --> Github Source
You can use it to get a few fields of data that relate to a cell phone number, but to determine carrier, do this.
require 'FoneFinder'
myPhoneNumber = FoneFinder.new("123-456-7890")
puts myPhoneNumber.carrier

Resources