Run a Python function with an input from a previous node... also import requests?

As n8n does use Pyodide underneath the hood, which does not support the request module, does sadly n8n neither. So, I suggest using the HTTP Request Node to make HTTP requests.

Regarding your second question, assuming you have Mode: Run Once for Each Item set, you should actually be able to see the answer in the default code of a Code node.

The default code is:

# Add a new field called 'myNewField' to the JSON of the item
_input.item.json.myNewField = 1
return _input.item

Meaning assuming the “ASIN” is saved as asin on the item, you can access it via _input.item.json.asin.