Replace bare excepts by explicit excepts in pandas/core/
(superseeds #18419, same task for different files: #22872, #22874, #22875, #22877)

In several parts of the code, we have bare excepts in the form of:
```python
try:
    my_value = my_dict[my_key]
except:  # we are capturing all the exceptions, when we want to capture only KeyError
    my_value = None
```

This is a bad practice, and we want to avoid having this in the code. What we want instead is:
```python
try:
    my_value = my_dict[my_key]
except KeyError:
    my_value = None
```
Of course in every case, the exception can be different (not always `KeyError`), and some research is needed to see which is the right exception (or exceptions, it can be a tuple) that needs to be captured. In some cases, every exception needs to be captured and we'll use `except Exception:`, but this should be avoided unless we really need to capture all exceptions.

This issue is to fix all the bare excepts in testing files `pandas/tests/`. At the moment they are (note that the list can change as code evolves):
```
pandas/core/frame.py:3263:13: E722 do not use bare except'
pandas/core/frame.py:7706:9: E722 do not use bare except'
pandas/core/indexing.py:2149:9: E722 do not use bare except'
pandas/core/indexing.py:2708:13: E722 do not use bare except'
pandas/core/indexing.py:2714:9: E722 do not use bare except'
pandas/core/nanops.py:506:13: E722 do not use bare except'
pandas/core/nanops.py:818:13: E722 do not use bare except'
pandas/core/ops.py:1548:17: E722 do not use bare except'
pandas/core/window.py:2507:5: E722 do not use bare except'
pandas/core/computation/pytables.py:414:9: E722 do not use bare except'
pandas/core/dtypes/common.py:470:5: E722 do not use bare except'
pandas/core/dtypes/dtypes.py:361:9: E722 do not use bare except'
pandas/core/dtypes/dtypes.py:522:13: E722 do not use bare except'
pandas/core/indexes/frozen.py:142:9: E722 do not use bare except'
pandas/core/indexes/multi.py:1005:17: E722 do not use bare except'
pandas/core/indexes/multi.py:1010:17: E722 do not use bare except'
pandas/core/indexes/multi.py:1689:9: E722 do not use bare except'
pandas/core/indexes/multi.py:2318:17: E722 do not use bare except'
pandas/core/indexes/multi.py:2821:17: E722 do not use bare except'
pandas/core/internals/blocks.py:669:9: E722 do not use bare except'
pandas/core/internals/blocks.py:1145:9: E722 do not use bare except'
pandas/core/internals/blocks.py:1160:9: E722 do not use bare except'
pandas/core/internals/blocks.py:2441:13: E722 do not use bare except'
pandas/core/internals/blocks.py:3175:9: E722 do not use bare except'
pandas/core/sparse/array.py:309:9: E722 do not use bare except'
pandas/core/tools/datetimes.py:244:17: E722 do not use bare except'
pandas/core/tools/datetimes.py:334:9: E722 do not use bare except'
pandas/core/tools/datetimes.py:731:5: E722 do not use bare except'
pandas/core/tools/datetimes.py:738:5: E722 do not use bare except'
pandas/core/tools/datetimes.py:745:5: E722 do not use bare except'
```
An updated list can be obtained by running: `flake8 --select=E722 --config=none pandas/core/`