Operación lógica de Python

Soy bastante nuevo en Python y estoy trabajando en un proyecto de raspado web utilizando la biblioteca Scrapy. No estoy usando la restricción de dominio incorporada porque quiero verificar si alguno de los enlaces a páginas fuera del dominio está muerto. Sin embargo, todavía quiero tratar las páginas dentro del dominio de manera diferente a las que están fuera de él y estoy tratando de determinar manualmente si un sitio está dentro del dominio antes de analizar la respuesta.

URL de respuesta:

http://www.siteSection1.domainName.com

Si la declaración:

if 'domainName.com' and ('siteSection1' or 'siteSection2' or 'siteSection3') in response.url:
    parsePageInDomain()

La declaración anterior es verdadera (la página se analiza) si 'siteSection1' es el primero en aparecer en la lista de or's pero no analizará la página si la url de respuesta es la misma pero la declaración if fue la siguiente:

if 'domainName.com' and ('siteSection2' or 'siteSection1' or 'siteSection3') in response.url:
        parsePageInDomain()

¿Qué estoy haciendo mal aquí? No he podido pensar con claridad lo que está sucediendo con los operadores lógicos y cualquier orientación sería muy apreciada. ¡Gracias!

Respuestas a la pregunta(1)

Su respuesta a la pregunta