Как получить список новых смарт конрактов?
Я с такой задачей еще не сталкивался, но вижу, что пока вообще никто не ответил.
Постараюсь помочь.

С уверенностью можно сказать то, что "копать" нужно в сторону анализа транзакций.

Транзакция в результате которой был создан смарт-контракт выглядит вот так
https://ropsten.etherscan.io/tx/0x5aa752d86932b36e...

Обратите внимание на поле "To"


Не исключаю, что если правильно декодировать поле "Input Data" - также можно получить информацию о том, что в этой транзакции должен создаться смарт-контракт.

Т.е. определить, что в результате этой транзакции создаётся смарт-контракт и после этого взять его адрес из поля To.

Знаю три варианта, которые можно рассмотреть для поиска решения:

1) https://docs.etherscan.io/, это бесплатное API от Ethereum (то, что на скриншотах).

2) https://infura.io, там, при помощи библиотек от эфира github.com/ethereum/go-ethereum я вычитывал транзакции и декодировал input data. Также там можно делать подписки.

3) можно попробовать поставить ноду эфира к себе на сервер и библиотеками эфира подключаться уже к ней, вместо infura.io и анализировать логи. Этот вариант имеет смысл только если вам не подходит ни etherscan.io, ни infura.io

Надеюсь это вам поможет.
Есть опенсорс проект https://github.com/blockchain-etl набор утилит по анализу блокчейн транзакций, скорее всего там решение есть