**Apache Airflow version**: 2.0.0


**Kubernetes version (if you are using kubernetes)** (use `kubectl version`): v1.16.3

**Environment**:

- **Cloud provider or hardware configuration**:
- **OS** (e.g. from /etc/os-release): Debian GNU/Linux 10 (buster)
- **Kernel** (e.g. `uname -a`): Linux airflow 3.10.0-1127.10.1.el7.x86_64 #1 SMP Tue May 26 15:05:43 EDT 2020 x86_64 GNU/Linux
- **Install tools**:
- **Others**:

**What happened**:

ExternalTaskSensor with check_existence=True referencing an external DAG inside a .zip file raises the following exception:
```
ERROR - The external DAG dag_a /opt/airflow-data/dags/my_dags.zip/dag_a.py was deleted.
Traceback (most recent call last):
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 1086, in _run_raw_task
    self._prepare_and_execute_task_with_callbacks(context, task)
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 1260, in _prepare_and_execute_task_with_callbacks
    result = self._execute_task(context, task_copy)
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 1300, in _execute_task
    result = task_copy.execute(context=context)
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/sensors/base.py", line 228, in execute
    while not self.poke(context):
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/utils/session.py", line 65, in wrapper
    return func(*args, session=session, **kwargs)
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/sensors/external_task.py", line 159, in poke
    self._check_for_existence(session=session)
  File "/home/airflow/.local/lib/python3.7/site-packages/airflow/sensors/external_task.py", line 184, in _check_for_existence
    raise AirflowException(f'The external DAG {self.external_dag_id} was deleted.')
airflow.exceptions.AirflowException: The external DAG dag_a /opt/airflow-data/dags/my_dags.zip/dag_a.py was deleted.
```

**What you expected to happen**:

The existence check should PASS.

**How to reproduce it**:

1. Create a file *dag_a.py* with the following contents:
```
from airflow import DAG
from airflow.operators.dummy import DummyOperator
from airflow.utils.timezone import datetime

DEFAULT_DATE = datetime(2015, 1, 1)
with DAG("dag_a", start_date=DEFAULT_DATE, schedule_interval="@daily") as dag:
    task_a = DummyOperator(task_id="task_a", dag=dag)
```

2. Create a file *dag_b.py* with contents:
```
from airflow import DAG
from airflow.operators.dummy import DummyOperator
from airflow.sensors.external_task import ExternalTaskSensor
from airflow.utils.timezone import datetime

DEFAULT_DATE = datetime(2015, 1, 1)

with DAG("dag_b", start_date=DEFAULT_DATE, schedule_interval="@daily") as dag:
    sense_a = ExternalTaskSensor(
        task_id="sense_a",
        external_dag_id="dag_a",
        external_task_id="task_a",
        check_existence=True
    )
    task_b = DummyOperator(task_id="task_b", dag=dag)
    sense_a >> task_b
```

3. `zip my_dags.zip dag_a.py dag_b.py`
4. Load *my_dags.zip* into airflow and run *dag_b*
5. Task *sense_a* will fail with exception above.

**Anything else we need to know**:



if [[ $(( {{ s }} % 60 )) == 1 ]]
    then
        exit 1
fi
exit 0
"""
        dag_external_id = TEST_DAG_ID + "_external"
        dag_external = DAG(dag_external_id, default_args=self.args, schedule=timedelta(seconds=1))
        task_external_with_failure = BashOperator(
            task_id="task_external_with_failure", bash_command=bash_command_code, retries=0, dag=dag_external
        )
        task_external_without_failure = EmptyOperator(
            task_id="task_external_without_failure", retries=0, dag=dag_external
        )
        task_external_without_failure.run(
            start_date=DEFAULT_DATE, end_date=DEFAULT_DATE + timedelta(seconds=1), ignore_ti_state=True
        )
        session = settings.Session()
        TI = TaskInstance
        try:
            task_external_with_failure.run(
                start_date=DEFAULT_DATE, end_date=DEFAULT_DATE + timedelta(seconds=1), ignore_ti_state=True
            )
            
            
            
        except Exception as e:
            failed_tis = (
                session.query(TI)
                .filter(