From 741e6ed3b4c064fb7a6ac4bcc508464f50fdc763 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 4 Aug 2021 11:23:47 +0300 Subject: [PATCH 01/54] chore: :see_no_evil: Return ignoring 'dist' folder after deleting old files --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index f24dab9..1958ece 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,7 @@ __pycache__/ .Python build/ develop-eggs/ -# dist/ +dist/ downloads/ eggs/ .eggs/ From 8da92476c0c5ac59059f96924a05a0f0c4238839 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 11 Aug 2021 09:26:13 +0300 Subject: [PATCH 02/54] chore: Add blank files for future code structure --- src/lep_downloader/cli.py | 1 + src/lep_downloader/commands/__init__.py | 1 + src/lep_downloader/commands/download.py | 1 + src/lep_downloader/commands/parse.py | 1 + src/lep_downloader/lep.py | 1 + 5 files changed, 5 insertions(+) create mode 100644 src/lep_downloader/cli.py create mode 100644 src/lep_downloader/commands/__init__.py create mode 100644 src/lep_downloader/commands/download.py create mode 100644 src/lep_downloader/commands/parse.py create mode 100644 src/lep_downloader/lep.py diff --git a/src/lep_downloader/cli.py b/src/lep_downloader/cli.py new file mode 100644 index 0000000..74a21db --- /dev/null +++ b/src/lep_downloader/cli.py @@ -0,0 +1 @@ +"""CLI main click group.""" diff --git a/src/lep_downloader/commands/__init__.py b/src/lep_downloader/commands/__init__.py new file mode 100644 index 0000000..a4a9852 --- /dev/null +++ b/src/lep_downloader/commands/__init__.py @@ -0,0 +1 @@ +"""Package with CLI commands.""" diff --git a/src/lep_downloader/commands/download.py b/src/lep_downloader/commands/download.py new file mode 100644 index 0000000..ac5dace --- /dev/null +++ b/src/lep_downloader/commands/download.py @@ -0,0 +1 @@ +"""Download command.""" diff --git a/src/lep_downloader/commands/parse.py b/src/lep_downloader/commands/parse.py new file mode 100644 index 0000000..c531657 --- /dev/null +++ b/src/lep_downloader/commands/parse.py @@ -0,0 +1 @@ +"""Convert command.""" diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py new file mode 100644 index 0000000..4bd5f7c --- /dev/null +++ b/src/lep_downloader/lep.py @@ -0,0 +1 @@ +"""LEP module for general logic.""" From 3aa7c68f3b102b868e1d15af0d03b63c448603bf Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 15 Aug 2021 09:22:48 +0300 Subject: [PATCH 03/54] chore: :heavy_plus_sign: Add requests, beautifulsoup4, lxml for parsing HTML 2.26.0 for requests 4.9.3 for beautifulsoup4 4.6.3 for lxml --- poetry.lock | 145 +++++++++++++++++++++++++++++++++++++++++-------- pyproject.toml | 3 + 2 files changed, 124 insertions(+), 24 deletions(-) diff --git a/poetry.lock b/poetry.lock index d285922..2bb7840 100644 --- a/poetry.lock +++ b/poetry.lock @@ -73,6 +73,21 @@ PyYAML = ">=5.3.1" six = ">=1.10.0" stevedore = ">=1.20.0" +[[package]] +name = "beautifulsoup4" +version = "4.9.3" +description = "Screen-scraping library" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +soupsieve = {version = ">1.2", markers = "python_version >= \"3.0\""} + +[package.extras] +html5lib = ["html5lib"] +lxml = ["lxml"] + [[package]] name = "black" version = "20.8b1" @@ -107,7 +122,7 @@ python-versions = "*" name = "certifi" version = "2021.5.30" description = "Python package for providing Mozilla's CA Bundle." -category = "dev" +category = "main" optional = false python-versions = "*" @@ -120,12 +135,15 @@ optional = false python-versions = ">=3.6.1" [[package]] -name = "chardet" -version = "4.0.0" -description = "Universal encoding detector for Python 2 and 3" -category = "dev" +name = "charset-normalizer" +version = "2.0.4" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.5.0" + +[package.extras] +unicode_backport = ["unicodedata2"] [[package]] name = "click" @@ -326,7 +344,7 @@ license = ["editdistance-s"] name = "idna" version = "2.10" description = "Internationalized Domain Names in Applications (IDNA)" -category = "dev" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" @@ -389,6 +407,20 @@ python-versions = "*" six = "*" tornado = {version = "*", markers = "python_version > \"2.7\""} +[[package]] +name = "lxml" +version = "4.6.3" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html5 = ["html5lib"] +htmlsoup = ["beautifulsoup4"] +source = ["Cython (>=0.29.7)"] + [[package]] name = "markupsafe" version = "2.0.1" @@ -633,21 +665,21 @@ python-versions = ">=3.6.1" [[package]] name = "requests" -version = "2.25.1" +version = "2.26.0" description = "Python HTTP for Humans." -category = "dev" +category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" [package.dependencies] certifi = ">=2017.4.17" -chardet = ">=3.0.2,<5" -idna = ">=2.5,<3" +charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} +idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} urllib3 = ">=1.21.1,<1.27" [package.extras] -security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"] socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] +use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] [[package]] name = "restructuredtext-lint" @@ -721,6 +753,14 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "soupsieve" +version = "2.2.1" +description = "A modern CSS selector implementation for Beautiful Soup." +category = "main" +optional = false +python-versions = ">=3.6" + [[package]] name = "sphinx" version = "4.0.2" @@ -927,7 +967,7 @@ python-versions = "*" name = "urllib3" version = "1.26.6" description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "dev" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" @@ -957,7 +997,7 @@ testing = ["coverage (>=4)", "coverage-enable-subprocess (>=1)", "flaky (>=3)", [[package]] name = "xdoctest" -version = "0.15.5" +version = "0.15.6" description = "A rewrite of the builtin doctest module" category = "dev" optional = false @@ -990,7 +1030,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "a7a665ad3877edeb82fcb68b5fafb281479385d5e1bdc2b9cbd9ea91fa995459" +content-hash = "bb29c96a60ddb5c80119edcac4be8396d4b043aa41010573a258cc905838b9f2" [metadata.files] alabaster = [ @@ -1021,6 +1061,11 @@ bandit = [ {file = "bandit-1.7.0-py3-none-any.whl", hash = "sha256:216be4d044209fa06cf2a3e51b319769a51be8318140659719aa7a115c35ed07"}, {file = "bandit-1.7.0.tar.gz", hash = "sha256:8a4c7415254d75df8ff3c3b15cfe9042ecee628a1e40b44c15a98890fbfc2608"}, ] +beautifulsoup4 = [ + {file = "beautifulsoup4-4.9.3-py2-none-any.whl", hash = "sha256:4c98143716ef1cb40bf7f39a8e3eec8f8b009509e74904ba3a7b315431577e35"}, + {file = "beautifulsoup4-4.9.3-py3-none-any.whl", hash = "sha256:fff47e031e34ec82bf17e00da8f592fe7de69aeea38be00523c04623c04fb666"}, + {file = "beautifulsoup4-4.9.3.tar.gz", hash = "sha256:84729e322ad1d5b4d25f805bfa05b902dd96450f43842c4e99067d5e1369eb25"}, +] black = [ {file = "black-20.8b1.tar.gz", hash = "sha256:1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea"}, ] @@ -1036,9 +1081,9 @@ cfgv = [ {file = "cfgv-3.3.0-py2.py3-none-any.whl", hash = "sha256:b449c9c6118fe8cca7fa5e00b9ec60ba08145d281d52164230a69211c5d597a1"}, {file = "cfgv-3.3.0.tar.gz", hash = "sha256:9e600479b3b99e8af981ecdfc80a0296104ee610cab48a5ae4ffd0b668650eb1"}, ] -chardet = [ - {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, - {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, +charset-normalizer = [ + {file = "charset-normalizer-2.0.4.tar.gz", hash = "sha256:f23667ebe1084be45f6ae0538e4a5a865206544097e4e8bbcacf42cd02a348f3"}, + {file = "charset_normalizer-2.0.4-py3-none-any.whl", hash = "sha256:0c8911edd15d19223366a194a513099a302055a962bca2cec0f54b8b63175d8b"}, ] click = [ {file = "click-8.0.1-py3-none-any.whl", hash = "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"}, @@ -1180,6 +1225,54 @@ jinja2 = [ livereload = [ {file = "livereload-2.6.3.tar.gz", hash = "sha256:776f2f865e59fde56490a56bcc6773b6917366bce0c267c60ee8aaf1a0959869"}, ] +lxml = [ + {file = "lxml-4.6.3-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:df7c53783a46febb0e70f6b05df2ba104610f2fb0d27023409734a3ecbb78fb2"}, + {file = "lxml-4.6.3-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:1b7584d421d254ab86d4f0b13ec662a9014397678a7c4265a02a6d7c2b18a75f"}, + {file = "lxml-4.6.3-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:079f3ae844f38982d156efce585bc540c16a926d4436712cf4baee0cce487a3d"}, + {file = "lxml-4.6.3-cp27-cp27m-win32.whl", hash = "sha256:bc4313cbeb0e7a416a488d72f9680fffffc645f8a838bd2193809881c67dd106"}, + {file = "lxml-4.6.3-cp27-cp27m-win_amd64.whl", hash = "sha256:8157dadbb09a34a6bd95a50690595e1fa0af1a99445e2744110e3dca7831c4ee"}, + {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:7728e05c35412ba36d3e9795ae8995e3c86958179c9770e65558ec3fdfd3724f"}, + {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:4bff24dfeea62f2e56f5bab929b4428ae6caba2d1eea0c2d6eb618e30a71e6d4"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:74f7d8d439b18fa4c385f3f5dfd11144bb87c1da034a466c5b5577d23a1d9b51"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f90ba11136bfdd25cae3951af8da2e95121c9b9b93727b1b896e3fa105b2f586"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:4c61b3a0db43a1607d6264166b230438f85bfed02e8cff20c22e564d0faff354"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux2014_x86_64.whl", hash = "sha256:5c8c163396cc0df3fd151b927e74f6e4acd67160d6c33304e805b84293351d16"}, + {file = "lxml-4.6.3-cp35-cp35m-win32.whl", hash = "sha256:f2380a6376dfa090227b663f9678150ef27543483055cc327555fb592c5967e2"}, + {file = "lxml-4.6.3-cp35-cp35m-win_amd64.whl", hash = "sha256:c4f05c5a7c49d2fb70223d0d5bcfbe474cf928310ac9fa6a7c6dddc831d0b1d4"}, + {file = "lxml-4.6.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d2e35d7bf1c1ac8c538f88d26b396e73dd81440d59c1ef8522e1ea77b345ede4"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:289e9ca1a9287f08daaf796d96e06cb2bc2958891d7911ac7cae1c5f9e1e0ee3"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:bccbfc27563652de7dc9bdc595cb25e90b59c5f8e23e806ed0fd623755b6565d"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d916d31fd85b2f78c76400d625076d9124de3e4bda8b016d25a050cc7d603f24"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:820628b7b3135403540202e60551e741f9b6d3304371712521be939470b454ec"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:c47ff7e0a36d4efac9fd692cfa33fbd0636674c102e9e8d9b26e1b93a94e7617"}, + {file = "lxml-4.6.3-cp36-cp36m-win32.whl", hash = "sha256:5a0a14e264069c03e46f926be0d8919f4105c1623d620e7ec0e612a2e9bf1c04"}, + {file = "lxml-4.6.3-cp36-cp36m-win_amd64.whl", hash = "sha256:92e821e43ad382332eade6812e298dc9701c75fe289f2a2d39c7960b43d1e92a"}, + {file = "lxml-4.6.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:efd7a09678fd8b53117f6bae4fa3825e0a22b03ef0a932e070c0bdbb3a35e654"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:efac139c3f0bf4f0939f9375af4b02c5ad83a622de52d6dfa8e438e8e01d0eb0"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:0fbcf5565ac01dff87cbfc0ff323515c823081c5777a9fc7703ff58388c258c3"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:36108c73739985979bf302006527cf8a20515ce444ba916281d1c43938b8bb96"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:122fba10466c7bd4178b07dba427aa516286b846b2cbd6f6169141917283aae2"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:cdaf11d2bd275bf391b5308f86731e5194a21af45fbaaaf1d9e8147b9160ea92"}, + {file = "lxml-4.6.3-cp37-cp37m-win32.whl", hash = "sha256:3439c71103ef0e904ea0a1901611863e51f50b5cd5e8654a151740fde5e1cade"}, + {file = "lxml-4.6.3-cp37-cp37m-win_amd64.whl", hash = "sha256:4289728b5e2000a4ad4ab8da6e1db2e093c63c08bdc0414799ee776a3f78da4b"}, + {file = "lxml-4.6.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b007cbb845b28db4fb8b6a5cdcbf65bacb16a8bd328b53cbc0698688a68e1caa"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:76fa7b1362d19f8fbd3e75fe2fb7c79359b0af8747e6f7141c338f0bee2f871a"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:26e761ab5b07adf5f555ee82fb4bfc35bf93750499c6c7614bd64d12aaa67927"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:e1cbd3f19a61e27e011e02f9600837b921ac661f0c40560eefb366e4e4fb275e"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:66e575c62792c3f9ca47cb8b6fab9e35bab91360c783d1606f758761810c9791"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:1b38116b6e628118dea5b2186ee6820ab138dbb1e24a13e478490c7db2f326ae"}, + {file = "lxml-4.6.3-cp38-cp38-win32.whl", hash = "sha256:89b8b22a5ff72d89d48d0e62abb14340d9e99fd637d046c27b8b257a01ffbe28"}, + {file = "lxml-4.6.3-cp38-cp38-win_amd64.whl", hash = "sha256:2a9d50e69aac3ebee695424f7dbd7b8c6d6eb7de2a2eb6b0f6c7db6aa41e02b7"}, + {file = "lxml-4.6.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ce256aaa50f6cc9a649c51be3cd4ff142d67295bfc4f490c9134d0f9f6d58ef0"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:7610b8c31688f0b1be0ef882889817939490a36d0ee880ea562a4e1399c447a1"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f8380c03e45cf09f8557bdaa41e1fa7c81f3ae22828e1db470ab2a6c96d8bc23"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:3082c518be8e97324390614dacd041bb1358c882d77108ca1957ba47738d9d59"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:884ab9b29feaca361f7f88d811b1eea9bfca36cf3da27768d28ad45c3ee6f969"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:6f12e1427285008fd32a6025e38e977d44d6382cf28e7201ed10d6c1698d2a9a"}, + {file = "lxml-4.6.3-cp39-cp39-win32.whl", hash = "sha256:33bb934a044cf32157c12bfcfbb6649807da20aa92c062ef51903415c704704f"}, + {file = "lxml-4.6.3-cp39-cp39-win_amd64.whl", hash = "sha256:542d454665a3e277f76954418124d67516c5f88e51a900365ed54a9806122b83"}, + {file = "lxml-4.6.3.tar.gz", hash = "sha256:39b78571b3b30645ac77b95f7c69d1bffc4cf8c3b157c435a34da72e78c82468"}, +] markupsafe = [ {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, @@ -1392,8 +1485,8 @@ reorder-python-imports = [ {file = "reorder_python_imports-2.5.0.tar.gz", hash = "sha256:7b8bd21cacc78be5674cc7f9a3fbeb63404f810ec3cbdd6b10f87e2dbb62f7cf"}, ] requests = [ - {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"}, - {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"}, + {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, + {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, ] restructuredtext-lint = [ {file = "restructuredtext_lint-1.3.2.tar.gz", hash = "sha256:d3b10a1fe2ecac537e51ae6d151b223b78de9fafdd50e5eb6b08c243df173c80"}, @@ -1441,6 +1534,10 @@ snowballstemmer = [ {file = "snowballstemmer-2.1.0-py2.py3-none-any.whl", hash = "sha256:b51b447bea85f9968c13b650126a888aabd4cb4463fca868ec596826325dedc2"}, {file = "snowballstemmer-2.1.0.tar.gz", hash = "sha256:e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914"}, ] +soupsieve = [ + {file = "soupsieve-2.2.1-py3-none-any.whl", hash = "sha256:c2c1c2d44f158cdbddab7824a9af8c4f83c76b1e23e049479aa432feb6c4c23b"}, + {file = "soupsieve-2.2.1.tar.gz", hash = "sha256:052774848f448cf19c7e959adf5566904d525f33a3f8b6ba6f6f8f26ec7de0cc"}, +] sphinx = [ {file = "Sphinx-4.0.2-py3-none-any.whl", hash = "sha256:d1cb10bee9c4231f1700ec2e24a91be3f3a3aba066ea4ca9f3bbe47e59d5a1d4"}, {file = "Sphinx-4.0.2.tar.gz", hash = "sha256:b5c2ae4120bf00c799ba9b3699bc895816d272d120080fbc967292f29b52b48c"}, @@ -1582,9 +1679,9 @@ virtualenv = [ {file = "virtualenv-20.4.7.tar.gz", hash = "sha256:14fdf849f80dbb29a4eb6caa9875d476ee2a5cf76a5f5415fa2f1606010ab467"}, ] xdoctest = [ - {file = "xdoctest-0.15.5-py2.py3-none-any.whl", hash = "sha256:bbf92c11e29ac5acab6d0381e9d4bcfdce7f2ed3b516e38e71a181d3d210d460"}, - {file = "xdoctest-0.15.5-py3-none-any.whl", hash = "sha256:49e16058d53138f3f20db3935c0e6e111d60a2c8739c017fb45c4486f4f8e8f1"}, - {file = "xdoctest-0.15.5.tar.gz", hash = "sha256:3d4966651c2eaa3b7c48307e484e6aa0428388d46842c3639d51757f0df56f56"}, + {file = "xdoctest-0.15.6-py2.py3-none-any.whl", hash = "sha256:4ba30ad2aadd6474388b185ced6d8146490d3720665c6964891c19b4b169b5fc"}, + {file = "xdoctest-0.15.6-py3-none-any.whl", hash = "sha256:c8ea193a19183f38fb85a0dc1659f1a39b0437ec892d692d44d586ae2780961f"}, + {file = "xdoctest-0.15.6.tar.gz", hash = "sha256:49ebffcfa49b810d5c02c6bc1ef0487a36a6a27bb46c39a137952fda3f03ae33"}, ] zipp = [ {file = "zipp-3.4.1-py3-none-any.whl", hash = "sha256:51cb66cc54621609dd593d1787f286ee42a5c0adbb4b29abea5a63edc3e03098"}, diff --git a/pyproject.toml b/pyproject.toml index ada6c8e..a2442d2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,6 +20,9 @@ Changelog = "https://github.com/hotenov/LEP-downloader/releases" [tool.poetry.dependencies] python = "^3.7.0" click = "^8.0.1" +requests = "^2.26.0" +beautifulsoup4 = "^4.9.3" +lxml = "^4.6.3" [tool.poetry.dev-dependencies] pytest = "^6.2.4" From df183a770a01b14441fd37721c92b979c098d766 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 1 Sep 2021 07:28:37 +0300 Subject: [PATCH 04/54] chore: :heavy_plus_sign: Add 'requests-file' to dev deps for future unit-tests --- poetry.lock | 18 +++++++++++++++++- pyproject.toml | 1 + 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/poetry.lock b/poetry.lock index 2bb7840..0cd4c58 100644 --- a/poetry.lock +++ b/poetry.lock @@ -681,6 +681,18 @@ urllib3 = ">=1.21.1,<1.27" socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] +[[package]] +name = "requests-file" +version = "1.5.1" +description = "File transport adapter for Requests" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +requests = ">=1.0.0" +six = "*" + [[package]] name = "restructuredtext-lint" version = "1.3.2" @@ -1030,7 +1042,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "bb29c96a60ddb5c80119edcac4be8396d4b043aa41010573a258cc905838b9f2" +content-hash = "57cadcc0db3728fda0c5a5d52ef31e574a2f1e452535c2c9b8ac4795f4950a9e" [metadata.files] alabaster = [ @@ -1488,6 +1500,10 @@ requests = [ {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, ] +requests-file = [ + {file = "requests-file-1.5.1.tar.gz", hash = "sha256:07d74208d3389d01c38ab89ef403af0cfec63957d53a0081d8eca738d0247d8e"}, + {file = "requests_file-1.5.1-py2.py3-none-any.whl", hash = "sha256:dfe5dae75c12481f68ba353183c53a65e6044c923e64c24b2209f6c7570ca953"}, +] restructuredtext-lint = [ {file = "restructuredtext_lint-1.3.2.tar.gz", hash = "sha256:d3b10a1fe2ecac537e51ae6d151b223b78de9fafdd50e5eb6b08c243df173c80"}, ] diff --git a/pyproject.toml b/pyproject.toml index a2442d2..cb265ee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -47,6 +47,7 @@ pre-commit-hooks = "^4.0.1" sphinx-rtd-theme = "^0.5.2" sphinx-click = "^3.0.1" Pygments = "^2.9.0" +requests-file = "^1.5.1" [tool.poetry.scripts] lep-downloader = "lep_downloader.__main__:main" From a5ea064cfeb921e6c770e263f024cfdf5335c8e6 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 12 Sep 2021 15:02:32 +0300 Subject: [PATCH 05/54] chore: :heavy_plus_sign: Add requests-mock 1.9.3 to dev dependencies --- poetry.lock | 30 +++++++++++++++++++++++++----- pyproject.toml | 1 + 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/poetry.lock b/poetry.lock index 0cd4c58..1cac655 100644 --- a/poetry.lock +++ b/poetry.lock @@ -693,6 +693,22 @@ python-versions = "*" requests = ">=1.0.0" six = "*" +[[package]] +name = "requests-mock" +version = "1.9.3" +description = "Mock out responses from the requests package" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +requests = ">=2.3,<3" +six = "*" + +[package.extras] +fixture = ["fixtures"] +test = ["fixtures", "mock", "purl", "pytest", "sphinx", "testrepository (>=0.0.18)", "testtools"] + [[package]] name = "restructuredtext-lint" version = "1.3.2" @@ -1009,7 +1025,7 @@ testing = ["coverage (>=4)", "coverage-enable-subprocess (>=1)", "flaky (>=3)", [[package]] name = "xdoctest" -version = "0.15.6" +version = "0.15.8" description = "A rewrite of the builtin doctest module" category = "dev" optional = false @@ -1042,7 +1058,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "57cadcc0db3728fda0c5a5d52ef31e574a2f1e452535c2c9b8ac4795f4950a9e" +content-hash = "691fcb60a6be62fe836c34e3a7794fdd086adf2adbaee962e16716f574c20e0c" [metadata.files] alabaster = [ @@ -1504,6 +1520,10 @@ requests-file = [ {file = "requests-file-1.5.1.tar.gz", hash = "sha256:07d74208d3389d01c38ab89ef403af0cfec63957d53a0081d8eca738d0247d8e"}, {file = "requests_file-1.5.1-py2.py3-none-any.whl", hash = "sha256:dfe5dae75c12481f68ba353183c53a65e6044c923e64c24b2209f6c7570ca953"}, ] +requests-mock = [ + {file = "requests-mock-1.9.3.tar.gz", hash = "sha256:8d72abe54546c1fc9696fa1516672f1031d72a55a1d66c85184f972a24ba0eba"}, + {file = "requests_mock-1.9.3-py2.py3-none-any.whl", hash = "sha256:0a2d38a117c08bb78939ec163522976ad59a6b7fdd82b709e23bb98004a44970"}, +] restructuredtext-lint = [ {file = "restructuredtext_lint-1.3.2.tar.gz", hash = "sha256:d3b10a1fe2ecac537e51ae6d151b223b78de9fafdd50e5eb6b08c243df173c80"}, ] @@ -1695,9 +1715,9 @@ virtualenv = [ {file = "virtualenv-20.4.7.tar.gz", hash = "sha256:14fdf849f80dbb29a4eb6caa9875d476ee2a5cf76a5f5415fa2f1606010ab467"}, ] xdoctest = [ - {file = "xdoctest-0.15.6-py2.py3-none-any.whl", hash = "sha256:4ba30ad2aadd6474388b185ced6d8146490d3720665c6964891c19b4b169b5fc"}, - {file = "xdoctest-0.15.6-py3-none-any.whl", hash = "sha256:c8ea193a19183f38fb85a0dc1659f1a39b0437ec892d692d44d586ae2780961f"}, - {file = "xdoctest-0.15.6.tar.gz", hash = "sha256:49ebffcfa49b810d5c02c6bc1ef0487a36a6a27bb46c39a137952fda3f03ae33"}, + {file = "xdoctest-0.15.8-py2.py3-none-any.whl", hash = "sha256:566e2bb2135e144e66ccd390affbe4504a2e96c25ef16260843b9680326cadc9"}, + {file = "xdoctest-0.15.8-py3-none-any.whl", hash = "sha256:80a57af2f8ca709ab9da111ab3b16ec474f11297b9efcc34709a2c3e56ed9ce6"}, + {file = "xdoctest-0.15.8.tar.gz", hash = "sha256:ddd128780593161a7398fcfefc49f5f6dfe4c2eb2816942cb53768d43bcab7b9"}, ] zipp = [ {file = "zipp-3.4.1-py3-none-any.whl", hash = "sha256:51cb66cc54621609dd593d1787f286ee42a5c0adbb4b29abea5a63edc3e03098"}, diff --git a/pyproject.toml b/pyproject.toml index cb265ee..905aa9b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -48,6 +48,7 @@ sphinx-rtd-theme = "^0.5.2" sphinx-click = "^3.0.1" Pygments = "^2.9.0" requests-file = "^1.5.1" +requests-mock = "^1.9.3" [tool.poetry.scripts] lep-downloader = "lep_downloader.__main__:main" From 2632ddf4d0ae97915997e29f8e2b03187a36da65 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 13 Sep 2021 13:01:24 +0300 Subject: [PATCH 06/54] feat(parser): :sparkles: Add function to parse archive page Decople separate modules: config, parser, downloader from lep module --- src/lep_downloader/config.py | 27 +++++++++ src/lep_downloader/downloader.py | 1 + src/lep_downloader/lep.py | 2 +- src/lep_downloader/parser.py | 100 +++++++++++++++++++++++++++++++ 4 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 src/lep_downloader/config.py create mode 100644 src/lep_downloader/downloader.py create mode 100644 src/lep_downloader/parser.py diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py new file mode 100644 index 0000000..106433e --- /dev/null +++ b/src/lep_downloader/config.py @@ -0,0 +1,27 @@ +"""App configuration module.""" + + + +ARCHIVE_URL = "https://hotenov.com" + +LOCAL_ARCHIVE_HTML = "2021-08-10_lep-archive-page-content-pretty.html" + +SHORT_LINKS_MAPPING_DICT = { + "http://wp.me/p4IuUx-7PL": "https://teacherluke.co.uk/2017/06/20/460-catching-up-with-amber-paul-6-feat-sarah-donnelly/", + "http://wp.me/p4IuUx-7C6": "https://teacherluke.co.uk/2017/04/25/444-the-rick-thompson-report-snap-general-election-2017/", + "http://wp.me/p4IuUx-7C4": "https://teacherluke.co.uk/2017/04/21/443-the-trip-to-japan-part-2/", + "http://wp.me/p4IuUx-7BQ": "https://teacherluke.co.uk/2017/04/21/442-the-trip-to-japan-part-1/", + "http://wp.me/p4IuUx-7BO": "https://teacherluke.co.uk/2017/04/18/441-andy-johnson-at-the-iatefl-conference/", + "http://wp.me/p4IuUx-7Av": "https://teacherluke.co.uk/2017/03/28/436-the-return-of-the-lying-game-with-amber-paul-video/", + "http://wp.me/p4IuUx-7zK": "https://teacherluke.co.uk/2017/03/26/i-was-interviewed-on-my-fluent-podcast-with-daniel-goodson/", + "http://wp.me/p4IuUx-7sg": "https://teacherluke.co.uk/2017/01/10/415-with-the-family-part-3-more-encounters-with-famous-people/", + "https://wp.me/p4IuUx-29": "https://teacherluke.co.uk/2011/10/11/notting-hill-carnival-video-frustration-out-takes/", +} + +# MISSPELLED_LTD = ".co.ukm" + +NOT_EPISODE_LINKS = ( + "https://wp.me/P4IuUx-82H", +) + +EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" \ No newline at end of file diff --git a/src/lep_downloader/downloader.py b/src/lep_downloader/downloader.py new file mode 100644 index 0000000..898887b --- /dev/null +++ b/src/lep_downloader/downloader.py @@ -0,0 +1 @@ +"""LEP module for downloading logic.""" \ No newline at end of file diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 4bd5f7c..2217a27 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -1 +1 @@ -"""LEP module for general logic.""" +"""LEP module for general logic and classes.""" diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py new file mode 100644 index 0000000..6de0cf7 --- /dev/null +++ b/src/lep_downloader/parser.py @@ -0,0 +1,100 @@ +"""LEP module for parsing logic.""" +import copy +import re +from typing import List, Tuple + +from bs4 import BeautifulSoup +import requests + +from lep_downloader import config as conf + + +deleted_links = [] +regex = conf.EPISODE_LINK_RE +ep_pattern = re.compile(regex, re.IGNORECASE) + + +def get_lep_archive_page(archive_url: str) -> str: + """Return HTML text of LEP archive page.""" + with requests.Session() as s: + req = s.get(archive_url) + req.encoding = "utf-8" + return req.text + + +def get_all_links_from_tag_with_class( + soup_obj: BeautifulSoup, + tag_name: str, + class_name: str, +) -> List[str]: + """Return list of links from HTML block.""" + tag_entry_content = soup_obj.find(tag_name, class_= class_name) + all_links: List[str] = [] + all_link_tags = tag_entry_content.find_all("a") + for link in all_link_tags: + all_links.append(link["href"].strip()) + + return all_links + + +def replace_misspelled_link(all_links: List) -> List: + """Replace link with '.ukm' misspelled LTD""" + links_without_misspelled_ltd = copy.deepcopy(all_links) + try: + bad_index = links_without_misspelled_ltd.index("https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/") + links_without_misspelled_ltd[bad_index] = "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" + except ValueError: + # Here, no need to handle it. + pass + return links_without_misspelled_ltd + + +def remove_irrelevant_links(links: List) -> List: + """Return list of links without known irrelevant links.""" + for i, link in enumerate(links[:]): + if link in conf.NOT_EPISODE_LINKS: + deleted_links.append(link) + del links[i] + return links + + +def remove_not_episode_links(links: List) -> List: + """Return list of adopted episode (post) links.""" + result = [] + for link in links: + match = ep_pattern.match(link) + if match: + result.append(link) + else: + deleted_links.append(link) + return result + + +def substitute_short_links(unique_links: List) -> List: + """Return list of links with final location for short links.""" + final_links = copy.deepcopy(unique_links) + + for key, value in conf.SHORT_LINKS_MAPPING_DICT.items(): + try: + short_link_index = unique_links.index(key) + final_links[short_link_index] = value + except ValueError: + print(f"[WARNING]: No short links: {key}") + return final_links + + +def get_archive_parsing_results(archive_url: str) -> Tuple: + """Return Tuple with valid episode links and discarded links.""" + html_page = get_lep_archive_page(archive_url) + soup_obj = BeautifulSoup(html_page, "lxml") + all_links = get_all_links_from_tag_with_class(soup_obj, "div", "entry-content") + cleaned_links = replace_misspelled_link(all_links) + cleaned_links = remove_irrelevant_links(cleaned_links) + cleaned_links = remove_not_episode_links(cleaned_links) + # Get unique links with preserved order for Python 3.7+ + unique_links = list(dict.fromkeys(cleaned_links)) + final_list = substitute_short_links(unique_links) + parsing_result = (final_list, deleted_links) + return parsing_result + + From 046d2fdaf7704515e778c33f2f370cb9241c1e63 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 13 Sep 2021 14:54:25 +0300 Subject: [PATCH 07/54] test(parser): :white_check_mark: Add test for checking mocked response of archive page Add test file with presaved archive HTML page --- ...08-10_lep-archive-page-content-pretty.html | 8845 +++++++++++++++++ tests/test_parser.py | 30 + 2 files changed, 8875 insertions(+) create mode 100644 tests/fixtures/2021-08-10_lep-archive-page-content-pretty.html create mode 100644 tests/test_parser.py diff --git a/tests/fixtures/2021-08-10_lep-archive-page-content-pretty.html b/tests/fixtures/2021-08-10_lep-archive-page-content-pretty.html new file mode 100644 index 0000000..5ed391e --- /dev/null +++ b/tests/fixtures/2021-08-10_lep-archive-page-content-pretty.html @@ -0,0 +1,8845 @@ + + + + + + + + + + + EPISODES | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+
+ +

+ EPISODES +

+
+
+

+ + THE ARCHIVE OF ALL EPISODES OF THE PODCAST + some extra content + +

+

+ + For the archive of all Premium episodes, click here. + +

+

+ + Get the free LEP App for even more bonus podcast episodes. + +

+

+ + + 733. A Summer Ramble + + + + – + + + A pre-holiday ramble in which I talk about learning English, moving to a new flat, the podcast over the next few months, football, being on Other People’s Podcasts, a recording of my daughter speaking English and a couple of songs. + + Video version available. + + +

+

+ + + 732. Christian from Canguro English returns + + + + – + + + Talking to Christian again about some of the themes and controversial opinions he talks about in his YouTube videos, plus some bits about men wearing thongs on the beach, an obsession with rabbits and if Christian was the Donald Trump of English teaching. + + Video version available. + + +

+

+ + + 731. Beatles Song Lyrics / Idioms & Expressions (with Antony Rotunno) + + + + – + + + Learn English with The Beatles as we explore lyrics from Beatles songs and pick out some idioms, descriptive language and other vocabulary for you to learn. Featuring Antony Rotunno from the Glass Onion: On John Lennon podcast. + +

+

+ + + 730. Marie Connolly Returns (+ 2 songs) + + + + – + + + Talking to author Marie Connolly about her new books for children, plus a story about how Jerry Seinfeld came to one of our comedy shows, with two songs on guitar at the end. + +

+

+ + + 729. TOEFL and the Duolingo English Test (with Josh MacPherson from TSTPrep.com) + + + + – + + + Talking to Josh MacPherson about tips and advice for taking TOEFL and the Duolingo English Test. YouTube version also available. + +

+

+ + + 728. English with Rob / Games, Music & Jingles + + + + – + + + Talking to Rob from + + English with Rob + + (podcast/YouTube). Rob is an English teacher, musician from England, and my former colleague. This episode includes lots of musical fun, some chatting about how we make our podcasts, fun word games and much more. + + Video version available. + + +

+

+ + + 727. Describing John Lennon / Adjectives of Personality J-Z (with Antony Rotunno) + + + + – + + + The second part of my conversation with Antony Rotunno (John Lennon podcaster, English teacher) in which we discuss adjectives of personality, with John Lennon as a case study. + + Vocabulary list available. + + +

+

+ + + 726. Describing John Lennon / Adjectives of Personality A-I (with Antony Rotunno) + + + + – + + + Learn useful adjectives for describing personality traits with John Lennon as a case study. Episode 3/5 in my Beatles series, with returning guest Antony Rotunno from the podcast “Glass Onion: On John Lennon”. + + Vocabulary list available. + + +

+

+ + + BONUS: EURO2020 Swapcast with Martin Johnston (RnR) & Zdenek Lukas (ZEP) Parts 1 & 2 + + + + – + + + A fun chat about the UEFA Euro2020 Football Championship, with Luke Thompson (Luke’s English Podcast), Martin Johnston (Rock N’ Roll English) and Zdenek Lukas (Zdenek’s English Podcast), with a special prize giveaway in which you can win prizes from all 3 of us. Non-football fans, feel free to skip this, of course! + + Video version available. + + +

+

+ + + 725. Fun & Games for Learning English with Vickie Kelty + + + + – + + + Playing word games with English teacher Vickie Kelty and talking about how to use these games in learning and teaching English. + +

+

+ + + 724. The Mountain (Short Story) + Video + + + + – + + + Reading an emotional short story, with vocabulary explanations and differences between British and American English. + + Video version available. + + +

+

+ + + Unboxing my Shiny YouTube Award for 100,000 Subscribers (Audio and Video Versions) + + + + – + + + YouTube sent me an award for reaching a subscriber milestone, so I opened the box live on video, answered some questions from the audience and played a song on the guitar. + + Audio and video versions available here. + + +

+

+ + + 723. Bahar from Iran + 🇮🇷 + (WISBOLEP Runner-Up) + + + + – + + + This is the final episode in the WISBOLEP competition series, speaking to Bahar from Iran about the 7-step method she used to improve her English and develop a British-sounding accent. Bahar used to be a terrible student who hated English, but then she made a decision to focus on her English in her own way. + + Listen to her explain how she did it. +

+

+ + + 722. Discussing John Lennon with Antony Rotunno + + + + – + + + The second in a short series about The Beatles, this one focuses on the life of John Lennon, with an overview of his life story, some thoughts about his psychology and some rambling discussion questions about this iconic British musician, with podcaster, English teacher and musician Antony Rotunno. + +

+

+ + + 721. Collins Dictionary Word Quizzes / Confusing Words with Fred Eyangoh + + + + – + + + This is the second part of my recent conversation with Fred Eyangoh about learning new vocabulary. This one includes a word quiz with homophones and commonly confused words from the Collins Dictionary website. + +

+

+ + + 720. How Fred Learns Vocabulary with the New York Times Spelling Bee (with Fred Eyangoh) + + + + – + + + Fred often plays spelling games on his phone during his lunch break, and he has discovered lots of new words as a result. In this episode I talk to Fred about his process of discovering and understanding new words and I talk about learning vocabulary with online dictionaries. + +

+

+ + + 719. Amber & Paul are on the Podcast + + + + – + + + Talking to pod-pals Amber & Paul about diverse topics including organ harvesting (yes), favourite fruits (exciting), accent challenges, guess the punchline, British Citizenship tests, What the “great” in Great Britain really means, and Amber’s son Hugo’s astonishing fluency in English. + +

+

+ + + 718. Michael the Shaman + 🇵🇱 + (WISBLOEP Runner-Up) + + + + – + + + Talking to competition runner-up Michael from Poland about two top English learning tips, scary hitch-hiking stories and the practice of shamanism using psychoactive substances. + +

+

+ + + 717. Gill’s Book Club: “One Two Three Four – The Beatles In Time” by Craig Brown + + + + – + + + Talking to my mum about a book which you could read as part of your English learning routine. The book tells the story of The Beatles and their impact on society. We review the book and then discuss many aspects of The Beatles story, especially the four Beatles themselves. + +

+

+ + + 716. Interview with a Pop Star from the 1960s – Megan Brady from The Applejacks + + + + – + + + An interview with Megan Brady, who was the bass player in The Applejacks – a pop band from Birmingham in the 1960s who had a top 5 record, met The Beatles and performed on TV shows and at concerts in the UK. + +

+

+ + + 715. Catching up with Craig Wealand [LEP/AIRC Swapcast] + + + + – + + + Exchanging questions with English teacher Craig Wealand from “Apprender Ingles con Resa y Craig” about COVID-19, living in Europe post-Brexit, my daughter’s English, getting proper tea in France and Spain, teaching English on Zoom, the worst jobs we’ve ever had + more, with a song on the guitar at the end. + +

+

+ + + 714. Robin from Hamburg + 🇩🇪 + (WISBOLEP Runner-Up) + + + + – + + + Talking to another runner-up from last year’s listener competition. Robin from Hamburg had a big setback in his learning of English, but worked hard to overcome it. We talk about his English learning trajectory, and ramble about German language & culture, his podcast for learners of German, podcasting microphones and then Robin teaches me some German words which are difficult to pronounce. + +

+

+ + + 713. Lucky Dip with Paul Taylor + + + + – + + + More random questions, talking points, accent challenges and “guess the idiom” with pod-pal Paul Taylor. Includes discussion of accents in English, cancel culture in comedy, some rude Spanish phrases and more. + + Video version available. + + +

+

+ + + 712. A Chat with Charlie Baxter + + + + – + + + Chatting with Charlie from The British English Podcast and Real English with Real Teachers on YouTube. We talk about the north/south divide in England, Charlie’s background in psychology & NLP, his decision to become an online English teacher and his travelling experiences in Chile, Germany and Australia. + + Video version available. + + +

+

+ + + 711. William from France + 🇫🇷 + (WISBOLEP Runner-UP) + + + + – + + + William started learning English at 12 years old and continued at university and beyond, spending a couple of years in England as a teaching assistant and then returning to France to work as a school teacher, in some pretty tough classrooms and less-than-perfect teaching conditions. + + William talks about how he continues to maintain his English, the importance of finding good language exchange partners, and more. +

+

+ + + 710. The Umbrella Man by Roald Dahl (Short Story) + + + + – + + + In this episode I read out a short story written by Roald Dahl and then comment on the style, language and plot. Enjoy some storytelling and learn some English in the process. + + Video version available. + + +

+

+ + + 709. The Stoicism of Groundhog Day (with Mum) + + + + – + + + This is a conversation with my mum about philosophy, how the film Groundhog Day can help us understand the principles of stoicism, and how this can all help us to feel a bit better about the world. + +

+

+ + + 708. Tasha Liu from China (WISBOLEP Runner-Up) + + + 🇨🇳 + + + + – + + + This conversation with competition runner-up Tasha Liu is a way to get to know Chinese culture in a personal way including the story of how Tasha’s father gave up drinking alcohol, and other interesting details about real life in the world’s most populated country. + +

+

+ + + 707. [2/2] Let’s Play Another Text Adventure Game – “Zombolocaust” by Peter Carlson + + + + – + + + Continuing the text adventure game about the zombie apocalypse from episode 706, with text on the screen so you can read with me while you listen. + + Video version available + + . Play the game with me – follow the links on the page. Listen to part 1 first! + + 👇 +

+

+ + + 706. [1/2] Let’s Play Another Text Adventure Game – “Zombolocaust” by Peter Carlson + + + + – + + + Playing a text adventure game about the zombie apocalypse, with text on the screen so you can read with me while you listen. + + Video version available. + + Play the game with me – follow the links on the page. + +

+

+ + + 705. Kate Billington Returns (and she brought cake) + + + + – + + + Listen to another natural conversation with Kate Billington about some listener comments, Chinese New Year, English festivals & food in February, sports day traditions, more cake recipes, various bits of vocabulary and more. + +

+

+ + + 704. The Rick Thompson Report: Brexit Update (February 2021) + + + – Talking again to my dad about UK politics and current affairs, focusing on the latest developments in Brexit, plus a bit of weather and sport. Listen to hear my dad explain complex things in plain English. + + Full transcript and text video available. + +

+

+ + + 703. Walaa from Syria – WISBOLEP Competition Winner + 🏆 + + + + – + + + Walaa Mouma from Syria has an amazing and inspiring story for all learners of English around the world, and some specific tips on how to improve your English long-term. Listen to this episode to hear all about it. + + Transcript and text video available. + + +

+

+ + + 702. Emergency Questions (with James) + + + + – + + + Listen to Luke and James talking about various topics as we answer questions from the book “Emergency Questions” by comedian Richard Herring. + + Text video and full transcript available. + + +

+

+ + + 701. Legal English with Louise Kulbicki + + + + – + + + Discussing some of the most important terms and concepts in legal English, while also learning about key cases through some amusing stories, with legal English trainer Louise Kulbicki. + + Text video and full transcript available. + + +

+

+ + + 700. Marooned With My Music: Luke Thompson + + + + – + + + Guest host Oli Thompson interviews Luke using a classic format from BBC Radio. Luke is going to be marooned on a desert island but he is allowed to bring 8 pieces of music, one book and a luxury item. For episode 700 this is a chance to get to know Luke and his musical choices. + + Text + + + Video and transcript available. + + +

+

+ + + 699. Welcome (back) to Luke’s English Podcast / FAQ (January 2021) + + + + – + + + Wishing everyone a happy new year and taking stock of the main aims and methods of this podcast, plus some frequently asked questions. Video version available on YouTube. + +

+

+ + + 698. Paul is on the Podcast / Random Questions with Paul Taylor + + + + – + + + Paul Taylor joins me for some random questions and challenges, including various little discussion points, accents, citizenship test questions, idioms, jokes and more. + +

+

+ + + 697. 11 Christmas Cracker Jokes for 2020, Explained + + + + – + + + Going through 11 topical Christmas jokes for 2020, then a ramble about podcast statistics for 2020 and more… Merry Christmas everyone! + +

+

+ + + 696. WISBOLEP Competition Results + RAMBLE + + + + – + + + Join me as I potter around my flat and give the results of the WISBOLEP competition then make a cup of tea and have a ramble about things like listening to non-native English speakers, reducing clutter in your home, renting vs owning a property, what it must be like to have only one hand, Zatoichi the blind swordsman, The Mandalorian TV series, Christmas plans and more. Includes a song on the guitar at the end. + +

+

+ + + 695. Pronunciation, Pragmatics & Procrastination with Emma + + + + – + + + Talking to Emma from YouTube channel Pronunciation with Emma about accents, improving your pronunciation, understanding pragmatics in English, and learning English through video games. + +

+

+ + + 694. The Crown / The Royal Family (A Royal Ramble with My Wife) + + + + – + + + Talking to my wife about the latest season of the Netflix TV drama The Crown, which follows the life and times of Queen Elizabeth II and her family. We talk about Charles & Diana, Margaret Thatcher, The Queen’s accent, Prince Andrew’s BBC interview and more. + +

+

+ + + 693. English With Lucy / A Conversation with Lucy Earl + + + + – + + + Chatting to Lucy Earl from the English with Lucy channel on YouTube. + +

+

+ + + 692. WISBOLEP Competition Entries – Listen & Vote! + + + + – + + + Listen to recordings sent in by listeners and vote for who you think should be on LEP. + +

+

+ + + 691. Jerome Butler – Dialect Coach + + + – + + + + How do professional actors change the way they speak for different acting roles? What can learners of English take from the way actors do this, in order to apply it to their language learning? In this conversation I speak to Jerome Butler who is a very experienced dialect coach working in the TV and film industry in the USA. + +

+

+ + + 690. Urban vs Rural / Living Abroad / Cultural Differences (with Cara Leopold) + + + + – + + + A conversation with Cara Leopold about the differences between life in Paris and life in provincial France, plus how it feels to live abroad away from your home country. + +

+

+ + + 689. Baking Cakes, Telling Jokes & Speaking Chinese with Kate Billington + + + + – + + + + + A funny chat with Kate who speaks multiple languages, makes delicious cakes, teaches English and does stand-up comedy. Enjoy! + +

+

+ + + 688. Sean Connery + + + – + + + + I recorded an episode about Sean Connery, who died yesterday. I didn’t expect to get emotional, but I did (a bit). Here it is. Hope you like it. + +

+

+ + + 687. WISBOLEP Problem / Polite Requests / An Inspiring Email / Fly Me To the Moon + + + + – + + + A rambling episode with some news about a problem I have with the WISBOLEP competition (ooh!), some tips on making polite requests, an inspiring email from a LEPster and a song on guitar at the end. T + + ranscript available. + + +

+

+ + + 686. Christian from Canguro English + + + + – + + + A conversation with YouTube English teacher Christian Saunders from Canguro English about the realities of learning and teaching English, motivation and goal-setting in language learning, Paul McCartney recording an album in his kitchen and plenty more. + + Video version also available on + + YouTube + + . + + +

+

+ + + 685. Raising Bilingual Children [1] Alex and his daughter Alice, in Moscow + + + + – + + + An episode exploring the subject of how to raise a child to speak English. I speak to Alex, an English teacher from Moscow about how he has been speaking exclusively in English to his 4-year-old daughter Alice since she was born. Let’s find out how it’s going. + +

+

+ + + 684. Chasing the Tangent Train with Elspeth Graty + + + + – + + + A conversation with English-teaching stand-up comedian Elspeth Graty, which covers lots of different topics including Elspeth’s background in England, teaching English, cultural differences, “French-bashing”, old-fashioned telephones and The Tellytubbies. Enjoy! + +

+

+ + + 683. Feelgood Stories of Flirting with Marie Connolly + + + + – + + + Marie Connolly is an Australian stand-up comedian and TEFL teacher who has written a book of short stories about times when men (from various countries) have flirted with her. In this episode Marie shares some of those stories, tells us about English men vs French men vs Australian men and much more. + +

+

+ + + 682. Key Features of English Accents, Explained + + + + – + + + Exploring the main differences between standard English pronunciation (RP) and non-standard regional or colloquial accents. How do people really speak in different parts of England, and how does this accent differ from the accent you probably hear in English language course books and dictionaries? + + Notes & videos available. + + +

+

+ + + 681. New Competition: Why I Should Be On LEP (WISBOLEP) / Story: The First Time I Said F*ck + + + + – + + + Announcing a new LEP competition which everyone is welcome to enter, plus an anecdote about the first time I said a rude word in front of my parents. + +

+

+ + + 680. Park Life – A Year in The Wildlife Of An Urban Park (by Rick Thompson) / Animal Collective Nouns + + + + – + + + My dad has written a book and it’s all about the wildlife you can find in an urban English park. He’s on the podcast to tell us all about it, and there are some collective nouns for animals too, plus some bonus stand up comedy at the end. + +

+

+ + + 679. Gill’s Book Club: A Gentleman In Moscow + + + + – + + + Talking to my mum again about her latest book recommendation. A Gentleman In Moscow is about a Russian Count who is put under house arrest in 1922 in the beautiful Metropol Hotel in Moscow. + +

+

+ + + 678. The Vintage Furniture Trade in London (with Howard Roach) + + + + – + + + Talking to my old teaching colleague Howard Roach about his furniture business in South London. + +

+

+ + + 677. A Post-Holiday Ramble / Holiday Vocab / Stories + + + + – + + + I’ve come back from my holiday so it’s time to ramble on about some holiday stories, holiday vocabulary, podcast stats and other bits and pieces including an appearance by my daughter. + +

+

+ + + 676. David Crystal: Let’s Talk – How English Conversation Works + + + + – + + + Professor David Crystal returns to talk about his latest books, and more. The first book is all about the art of conversation in English, and the second one is a spy thriller inspired by real events. David Crystal is one of the world’s leading linguists and an expert on the English language. + +

+

+ + + 675. An Unplanned Pre-Holiday Ramble (July 2020) + + + + – + + + This episode is unedited and contains all my pauses, mistakes and thoughts while I attempt to talk about what’s coming up on LEP, my recent appearances on other people’s podcasts, comments and emails of the week and a couple of songs on the guitar. + +

+

+ + + 674. 19 Amusing Insurance Claims / Car Crash Vocabulary + + + + – + + + Listen to some funny extracts from genuine insurance claims and learn some vocabulary to describe car crashes and driving (badly). + +

+

+ + + 673. Conspiracies / UFOs / Life Hacks (with James) + + + + – + + + Talking to my brother about some click-bait topics, with stories, beliefs and a few celebrity impressions. Links, transcripts and videos available. + +

+

+ + + 672. The Rick Thompson Report: COVID / BREXIT / BLM (July 2020) + + + + – + + + Talking to my dad about recent developments in the UK relating to coronavirus & Brexit with a cameo appearance by Gill Thompson talking about statues. + +

+

+ + + 671. Aussie English with Pete Smissen + + + + – + + + A conversation with genuine Aussie Pete Smissen, about differences and similarities between the UK and Australia, cultural and historical details, language similarities, and more. Check YouTube for the video version. + +

+

+ + + 670. Language Learning with James Harris + + + + – + + + Talking to writer and comedian James Harris about life as a writer, going to Oxford Uni, being an international Brit and learning German, French and Chinese as an adult. + +

+

+ + + 669. How to Learn English + + + + – + + + Giving you as advice about learning English across the four skills of reading, listening, writing and speaking. Full transcript available. + +

+

+ + + 668. LEP LIVE! Ask Me Anything / Hang Out With Luke (AUDIO VERSION) + + + + – + + + Listen to the audio version of the recent LEP Live Stream on YouTube including an audience Q&A, learning English tips, some crap ‘Dad Jokes’ and 3 songs on the guitar. + +

+

+ + + 667. Four Way Call (with Alex, Moz & Paul) + + + + – + + + A lockdown Zoom call with my friends Alex, Paul and Moz which should be a fun but challenging listening exercise. Intro & ending transcripts available. + +

+

+ + + Announcement: I’m doing a YouTube Live Stream on Wednesday 10 June at 3PM CET + + + + – + + + Here are the details of my next YouTube live stream on Weds 10 June 2020 at 3PM CET. Also, listen to the audio from last Wednesday’s unplanned live stream. + +

+

+ + + 666. [Part 3] Favourite Scary Films (with James) + + + + – + + + James and Luke talk about some of their favourite scary films, and more. This is the 3rd and final part of episode 666. + +

+

+ + + 666. [Part 2] Frightening Experiences (with James) + + + + – + + + James and I share some stories of genuinely scary and disturbing experiences which we’ve had in our lives. + +

+

+ + + 666. [Part 1] The Number of the Beast / Scary Music / Black Sabbath (with James) + + + + – + + + Talking to my brother James about the significance of the number 666, and then some scary music including ‘The Devil’s Interval’, Black Sabbath and more… + +

+

+ + + 665. A Chinwag with Sebastian Marx / 18+ British slang phrases that Americans don’t understand + + + + – + + + Chatting to Sebastian Marx from New York and testing his knowledge of British English slang phrases. + + Slang vocabulary list available. + + +

+

+ + + 664. Lockdown Ramble with My Wife + + + + – + + + Chatting to my wife late one evening last week about what it’s like to be with an English guy, raising our daughter to be bilingual and more… + +

+

+ + + 663. The Lockdown Lying Game with Amber & Paul + + + + – + + + Listen to three more stories told by Amber, Paul and Luke – can you guess if they are true or lies? + +

+

+ + + 662. Catching Up with Amber & Paul #10 (Surviving Lockdown with Kids) + + + + – + + + Chatting to Amber Minogue & Paul Taylor about dealing with confinement at home with children, the birth of Amber’s baby, tongue twisters, weird children’s TV series and more. + +

+

+ + + 661. An Englishman in Los Angeles (with Oli) + + + + – + + + Talking to my cousin Oliver about moving to Los Angeles, working as a TV producer and how his American colleagues react to his British English. + +

+

+ + + 660. Using TV Series & Films to Improve Your English + + + + – + + + Lots of practical advice and comments about how you can use films and TV series to work on your English. This episode is a recap of some advice in episode 523 with Cara Leopold. + + Transcript available. + + +

+

+ + + 659. Lockdown Chat with Cara Leopold + + + + – + + + Chatting to Cara Leopold about living in self isolation, the global coronavirus lockdown and how you can work on your English at home using TV shows and films. + +

+

+ + + 658. [2/2] Why do Brits sing with American accents? + + + + – + + + This is part 2 of a double episode exploring the question of why British people often change their accent when they sing. This episode contains more examples, including some (dodgy) singing from me in order to hear how it sounds when different songs are sung in different accents. + + Notes, lyrics and transcriptions available. + + +

+

+ + + 657. [1/2] Why do Brits sing with American accents? + + + + – + + + Have you ever wondered why British people sometimes change their accent when they sing? This episode explores the question of why this happens, with various examples and some (dodgy) singing by me. + + Notes, videos and transcripts available. + + +

+

+ + + 656. British Comedy: Karl Pilkington’s Monkey News / The Ricky Gervais Show + + + + – + + + Listen to a funny story told in a Manchester accent, and learn various bits of English in the process including vocabulary and pronunciation. Improve your understanding of regional British accents. + + Story transcript & vocabulary notes available. + + +

+

+ + + 655. Coping with Isolation / Describing Feelings and Emotions – Vocabulary & Experiences + + + + – + + + A vocabulary episode with lots of phrases for describing the experience of living in self-isolation. It also includes a bit of a ramble about the situation in the UK, my personal experiences of living in Paris during the lockdown and a song at the end. + + Vocabulary list & notes available. + + +

+

+ + + 654. Computer-based IELTS / Stories about The First Time… (with Jessica Beck from IELTS Energy Podcast) + + + + – + + + A chat with Jessica Beck from the IELTS Energy Podcast about the new computer-based IELTS test, plus some funny stories about doing things for the first time, motivation in language learning, dealing with the stress of public speaking and seeing “The Fonz” on a ski slope. + +

+

+ + + 653. Gill’s Book Club – “The Five: The Untold Lives of the Women Killed by Jack the Ripper” by Hallie Rubenhold / How to read books to improve your English + + + + – + + + Talking to my mum about a good book she read recently; a social history about 5 women who had one thing in common – they were all murdered by Jack The Ripper in 1888. Also includes some advice and comments about reading books to learn English. + +

+

+ + + 652. The Rick Thompson Report: Coronavirus (COVID-19) + + + + – + + + Talking to my dad about what’s happening in the UK at the moment, how serious this pandemic is, what the consequences might be and how the UK’s government is responding to it. + +

+

+ + + 651. Coronavirus (COVID-19) Vocabulary + + + + – + + + Explaining key vocabulary about the coronavirus (COVID-19) to help you talk about this global pandemic in English. + +

+

+ + + 650. British Music: Jungle (with James) + + + + – + + + An in-depth episode all about an innovative British form of dance music from the 90s: Jungle (aka Drum & Bass). Includes discussion with James about the origins of the music, how it sounds, its position in UK culture and a few anecdotes too. Notes & music playlists available on the website. + +

+

+ + + 649. An Unedited Ramble (March 2020) Never Explain, Never Apologise? / No Stress / Method To The Madness / 3 Songs on Guitar + + + + – + + + Luke talks on his own without stopping, restarting or editing, including responses to comments about recent episodes, thoughts on the methodology behind this podcast, some vocabulary teaching, a few songs on the guitar and more. + +

+

+ + + 648. Ian Moore Returns + + + + – + + + Talking again to comedian Ian Moore about favourite films, a trip to New York, British & American audiences, how to iron a shirt, and funny stories about taking the language test to qualify for French citizenship. + +

+

+ + + 647. British Comedy: Alan Partridge (Part 6) + + + + – + + + The final part in this little series following Alan Partridge through a day in his life, and breaking it down for language. Alan is not for everyone, but I hope you’ve enjoyed this series and learned some English from it. + +

+

+ + + 646. British Comedy: Alan Partridge (Part 5) + + + + – + + + What did Alan do on Valentine’s Day? Listen to find out, as we break down some more clips of this award-winning comedy and use them to learn English. + +

+

+ + + 645. British Comedy: Alan Partridge (Part 4) + + + + – + + + Listening to some more classic British comedy and dissecting it for language. This time we’re listening to some more clips of Alan Partridge, a comedy character played by Steve Coogan. This is part 4 of a series I started in 2018. + +

+

+ + + 644. The Rick Thompson Report: Is Brexit Done? + + + + – + + + Talking to my dad about the latest in the Brexit saga including the general election result, Brexit day on 31 January 2020 and the latest government shenanigans by PM Boris Johnson and co. + +

+

+ + + 643. The Intercultural Communication Dance with Sherwood Fleming + + + + – + + + Talking to Sherwood Fleming, author of “Dance of Opinions” about intercultural communication, including common problems and the solutions to help us learn to communicate more effectively across cultures. + +

+

+ + + 642. The Lying Game Returns (with Amber & Paul) + + + + – + + + This should make you laugh out loud on the bus – it’s the return of the Lying Game with Amber & Paul. Listen to our 3 stories. Do you think they are true, or lies? + +

+

+ + + 641. Catching Up with Amber & Paul #9 + + + + – + + + The pod-pals are back on the podcast and it’s time for the usual catching up session in which we talk about how very-pregnant Amber has moved to the suburbs of Paris, the difference between a terrace, veranda, porch and conservatory, the difference between a cave and a basement, Paul’s showbiz news, the ongoing joys and more. + +

+

+ + + 640. IELTS Speaking Success with Keith O’Hare + + + + – + + + Talking to IELTS speaking coach Keith O’Hare about how to get your best score in the IELTS speaking test, plus some chat about the right approach to learning English. + +

+

+ + + 639. 3 Quintessentially British Books (that you might not know about) with Mum + + + + – + + + Talking to my mum about some examples of quintessentially British things, in this case it’s 3 British books that she particularly likes. + +

+

+ + + 638. 3 Quintessentially British Things (that you might not know about) with Dad + + + + – + + + Dad picks his 3 British things to talk about in this episode which covers things like ancient history, British northern landscapes and the canal system which built the industrial revolution and changed Britain forever. + +

+

+ + + 637. 5 Quintessentially English Things (that you might not know about) with James + + + + – + + + Talking with James about 5 typically English things, including conversation about pop culture, writers, TV shows, British humour and more… + +

+

+ + + 636. James & Luke Discuss Star Wars IX (SPOILERS) Final Star Wars Episode Ever? + + + – + + + + James and Luke ramble about Star Wars IX one more time. This episode is full of little jokes, sketches, voices and full spoilers for The Rise of Skywalker. + +

+

+ + + 635. A New Year Ramble for 2020 (Part 2) Motivation / New Year’s Rules / Bilingual Daughter / Neil Innes + + + + – + + + Luke rambles some more at the start of 2020 about new year’s resolutions, holiday stories, raising his daughter to be bilingual and a tribute to Neil Innes (with a song or two). + + Notes available. + + +

+

+ + + 634. A New Year Ramble for 2020 (Part 1) + + + + – + + + Luke wishes you a Happy New year and rambles about recent podcast statistics, new year in the UK, welcoming new listeners to the podcast, and some stories about travelling to the UK with a toddler by plane. + + Transcript available. + + +

+

+ + + 633. Star Wars IX: The Rise of Skywalker (SPOILER REVIEW) + + + + – + + + I’ve seen The Rise of Skywalker – here are my comments and thoughts. Please be aware that this episode is full of SPOILERS! + +

+

+ + + 632. Star Wars IX: The Rise of Skywalker (No Spoilers!) + + + + – + + + A new Film Club episode in which Luke rambles about Star Wars IX, including various speculations and theories. NO SPOILERS. + + Transcript/Notes available. + + +

+

+ + + 631. 29 Awful Christmas Jokes, Explained + + + + – + + + The annual Christmas episode of LEP is here! Explaining 29 truly awful jokes that you might get in a Christmas cracker this year. Enjoy! Merry Christmas and a Happy New Year! + +

+

+ + + 630. The English Guy with a Sitcom on Japanese TV (with BJ Fox) + + + + – + + + A conversation with English comedian BJ Fox, who performs stand-up in Japan and has his own TV show on NHK. Our conversation includes the story of how BJ managed to pitch the show to Japanese producers, how he learnt Japanese to a proficient level, doing stand-up in a different culture and much more. + +

+

+ + + 629. Do you ever … ? (with James) Strange Habits & Funny Observations + + + + – + + + A funny conversation about strange habits that we don’t often talk about, with my brother James. + + Notes & scripts available. + + +

+

+ + + 628. OASIS (with James) + + + + – + + + A conversation with James about the English rock band Oasis, including details about their story, music, lyrics and the sibling rivalry between Noel and Liam Gallagher. + + Notes & videos available. + + +

+

+ + + 627. Emina’s Long Journey to English Proficiency + + + + – + + + My friend Emina Tuzovic has learned English to a proficient level as a non-native speaker of the language. She says it has been “a long journey”. Let’s find out all about that journey of English learning in this conversation, recorded in London just a couple of days ago. + +

+

+ + + 626. The Rick Thompson Report: Boris Johnson’s Brexit Deal / General Election / Football + + + + – + + + An update from my dad about Brexit, including details about Boris Johnson’s deal, the shutting down of Parliament, the upcoming general election and more. Includes some chat about Premiership football at the end. + +

+

+ + + 625. 88 English expressions that will confuse everyone (Part 2) + + + + – + + + Let’s continue going through this list of words from an article I found in The Independent. Here is another list of 30 items of British English slang. + + Notes and links available. + + +

+

+ + + 624. 88 English expressions that will confuse everyone (Part 1) + + + + – + + + An episode about British English slang and culture, featuring expressions that Brits know but everyone else finds confusing. Here are the first 30 expressions in a list of 88 that I found on independent.co.uk. Includes plenty of funny improvised examples to make you laugh out loud on the bus. + + Word list available. + + +

+

+ + + 623. 13 Terrible Jokes, Explained + + + + – + + + Actually, it’s 17 jokes, including some simple one-liners and a few longer story-based jokes for you to remember and practise telling yourself. Listen to Luke read out and explain some pretty awful but enjoyable word puns and shaggy dog stories, and learn some English in the process. + + All jokes listed on the page for the episode. + + +

+

+ + + 622. General Ramble (Oct 2019) Learning English / Politics / Recording Setup / Book Recommendation / Beatles / Star Wars / Bill Bailey + + + + – + + + Rambling on my own about all sorts of things including Brexit news, describing my recording setup and microphones, a book recommendation for you, comments about the Beatles Abbey Road 50th Anniversary, the latest Star Wars Episode 9 trailer and Bill Bailey dissecting music in a brilliant way. + +

+

+ + + 621. British TV: Dragons’ Den (Part 3) Discord in the Den + + + + – + + + One more episode about this TV series involving entrepreneurs getting investment for their business startups. In this one there’s plenty of disagreement and some strong feedback from the Dragons. + +

+

+ + + 620. British TV: Dragons’ Den (Part 2) Negotiation + + + + – + + + Listen to a real business negotiation and learn loads of English in the process. + + Vocabulary, scripts and notes available. + + +

+

+ + + 619. British TV: Dragons’ Den (Part 1) Vocabulary + + + + – + + + Learn tons of business vocabulary in context in this episode all about a TV show about entrepreneurs negotiating investment for their business startups. + + Notes & scripts available. + + +

+

+ + + 618. The Climate Crisis Explained in 10 Charts (with Cara Leopold) + + + + – + + + A conversation with Cara Leopold about the climate crisis including descriptions of key charts, graphs and data. + + Notes and transcripts available. + + +

+

+ + + 617. Sales and Advertising (with Paul Taylor) + + + + – + + + A language-focused episode looking at words and phrases that you often see and hear in advertising and sales situations. Also includes discussion of sales techniques, Apple’s sales and marketing strategy and also a classic bit of stand-up by the late great George Carlin. + + All vocabulary is listed on the page. + + +

+

+ + + 616. Can you find the 15 idioms? (with Paul Taylor) + + + + – + + + Listen to Luke and Paul play a conversation game and try to spot 15 common idioms. + + All idioms are demonstrated, explained and listed on the website. + + +

+

+ + + 615. Paul Taylor Became a Dad, and you won’t believe what happened next + + + + – + + + Find out about Paul Taylor’s life now that he’s the father of a newborn baby. + +

+

+ + + 614. Another Murder Mystery Detective Story (Part 3) + + + + – + + + Here’s the conclusion of this online murder mystery text adventure game. + + Vocabulary is reviewed at the end. Video available for premium subscribers. + + +

+

+ + + 613. Another Murder Mystery Detective Story (Part 2) + + + + – + + + Join Luke as we continue to work through this mystery story following a serial killer through the streets of Victorian London. Read the story and play the text adventure game as you listen. + + Video available for premium subscribers. + + +

+

+ + + 612. Another Murder Mystery Detective Story (Part 1) + + + + – + + + Listen to Luke investigating a ‘choose-your-own-adventure’ detective story and read along if you like! Learn English in fun ways with stories on Luke’s English Podcast. + + Video available for premium subscribers. + + +

+

+ + + 611. Top 10 Jokes from Edinburgh Fringe 2019 + + + + – + + + Listen to 10 jokes from this year’s Edinburgh Festival Fringe comedy shows. Understand the jokes and listen to Luke break them down to help you learn more English. + +

+

+ + + 610. British Comedy: James Acaster + + + + – + + + Listen to a bit of stand up comedy that will require quite a lot of breaking down in order for you to understand all the jokes like a native speaker, but there’s lots to learn in the way of language and culture in the process. + +

+

+ + + 609. The LEP MeetUp in London / Brexit / Talking to my Daughter + + + + – + + + Here’s an end-of-summer ramble, including details of what happened at the LEP meetup in London in July and some recordings of LEPsters who attended the event. There’s also talk of Brexit and some interviews with my daughter who is beginning to speak. + +

+

+ + + 608. The Mass Observation (with Mum) + + + + – + + + Listen to my mum talk about a social history project focusing on the lives of everyday people in the UK. Includes discussion of things like protests, plastic, identity, sex education, loneliness, and milk! + +

+

+ + + 607. The Rick Thompson Report: Boris Johnson PM / No Deal Brexit? + + + + – + + + Talking to my dad again about Brexit, this time including our thoughts on Boris Johnson as the new Prime Minister and the possibility of the UK leaving the EU without a deal on 31 October. + +

+

+ + + 606. The English Seaside (with James) + + + + – + + + Explaining and describing the culture of the English seaside experience, with James. + +

+

+ + + 605. Unexpected Road Trip (with James) + + + + – + + + James and Luke go on an accidental road trip in the south-west of England and record a rambling podcast, while slowly going a bit mad. Will they make it to their destination before sunset? Listen to find out what happens and to learn some words and culture in the process. + +

+

+ + + 604. London Native Speaker Interviews REVISITED Part 2 + + + + – + + + Listening to the audio from another old YouTube video of mine, and then exploring it for new vocabulary and English learning opportunities. + +

+

+ + + 603. Queen / Freddie Mercury / Bohemian Rhapsody + + + + – + + + A conversation with Queen fan Alex Love about one of the UK’s most famous and iconic bands. This episode has been requested many times by listeners, so finally – here it is! + +

+

+ + + 602. British Comedy: The Day Today (Part 2) + + + + – + + + The Day Today is an award-winning parody of news and current affairs TV programmes. Let’s listen to some more clips, understand the humour and learn some English in the process. + + Notes & videos available. + + +

+

+ + + 601. British Comedy: The Day Today (Part 1) + + + + – + + + Let’s investigate a brilliant British comedy TV show and use it to learn English. The Day Today was originally broadcast on the BBC in the mid-90s and is now considered a groundbreaking parody of news programmes and launched the careers of various comedians, including Steve Coogan. + + Notes & videos available. + + +

+

+ + + Quick Hello / OPP / Living Through Comedy / Somewhere Else Dreamin’ + + + + – + + + Just a quick “hello” to let you know about some other things you could listen to this month, including my appearances on some other people’s podcasts. + +

+

+ + + 600. Episode 600 YouTube Livestream – Ask Me Anything + + + + – + + + Here is the video and audio from Friday’s YouTube livestream for episode 600 of LEP. Enjoy! + +

+

+ + + 599. Oliver Gee Returns with Stories to Tell + + + + – + + + Australian journalist and podcaster Oliver Gee returns to LEP to tell us some stories about the Notre Dame Cathedral fire, meeting famous comedians as a journalist, learning Swedish and French and his honeymoon tour of France on a 50cc Vespa scooter. + +

+

+ + + 598. The Rick Thompson Report: EU Elections / Theresa May / Brexit / Football + + + + – + + + Talking to my dad about the EU election results, Theresa May resigning as Prime Minister, Brexit and English football teams in Europe. + + Notes, transcripts and videos available. + + +

+

+ + + Hello! Here are the details of the Episode 600 YouTube live stream + + + + – + + + The Episode 600 YouTube Live Stream will be on 7 June at 3PM Paris time. + + Links and details available (and a transcript). + + +

+ + +
+ + + + + +
+ +

+ + + 597. Growing Up / Getting Older / Becoming a Father (with Paul Taylor) + + + + – + + + In this conversation Paul and I get a bit deep & meaningful and talk about where Paul is in his life at this point, including our thoughts about becoming a father, getting older and growing up. + +

+

+ + + 596. SLEEP with Amber & Paul + + + + – + + + All about the subject of SLEEP, with Amber & Paul. Listen to hear us comparing our sleeping habits, talking about insomnia, sleepwalking, talking in your sleep, snoring, falling asleep on public transport, snoring cats, Paul learning Arabic in his sleep and more, including some slightly disgusting stories, which is nice! + +

+

+ + + 595. Andy Johnson Returns (Part 2) Eating / TV Series / Football / Music + + + + – + + + Asking Andy questions from a speaking task in the English File Intermediate course book and chatting about eating habits, TV series, Liverpool & Tottenham in the European Champions’ League and music we’ve been listening to recently including some stories about Steely Dan and The Beatles. + + Intro & ending transcripts + videos available + + . + +

+

+ + + 594. Andy Johnson Returns (Part 1) Moving House / London vs Canterbury / English Teaching + + + + – + + + Chatting to friend of the podcast Andy Johnson about moving house, comparisons between London and Canterbury and different approaches to teaching English. + + Intro & outtro transcripts available. + + +

+

+ + + 593. Going through pages in an old diary + + + + – + + + Listen to me reading out some pages from a diary which I wrote when I was 16 years old. Join me as I take a trip down memory lane and find out what I was doing, thinking and feeling 25 years ago. Some language is explained along the way. + + Vocabulary notes, song lyrics and videos available. + + +

+

+ + + 592. It always seems impossible until it’s done + + + + – + + + An unedited ramble about motivation for language learning, dealing with challenges, getting started on a task, getting work done and my process for making episodes of the podcast. There’s also some news, some OPP and a couple of songs on the guitar at the end. + + Vocabulary notes, links, videos and song lyrics available + + . + +

+

+ + + 591. London Native Speaker Interviews REVISITED (Part 1) + + + + – + + + Revisiting a video I made for YouTube in 2009 and teaching you some descriptive and idiomatic vocabulary in the process. + + Transcripts and video available. + + +

+

+ + + 590. [2/2] Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh) + + + + – + + + Here’s part 2 of this film club episode, including the rest of my chat with Fred Eyangoh and then a monologue from me. This one contains predictions for Avengers Endgame, the future of Marvel Studios and some other film franchises including Star Wars. + + No spoilers given + + ! + + Notes, scripts and videos available. + + +

+

+ + + 589. Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh) + + + + – + + + Part 1 of a big ramble about Avengers Endgame, Marvel Studios and comic book movies in general with my friend, comedian Fred Eyangoh. + + No spoilers + + ! Part 2 coming soon… + +

+

+ + + 588. Punctuation Rules / Book Review (Part 2) Apostrophe, Full Stop, Comma + + + + – + + + Part 2 of my episode about punctuation. This one covers punctuation rules for apostrophe, full stop and comma. Also you can hear the rest of my book review of Punctuation..? by User Design. + + Transcript available. + + +

+

+ + + 587. Punctuation Rules / Book Review (Part 1) + + + + – + + + This episode is about the importance of punctuation in writing. I’ll teach you the names of various punctuation symbols and review a cool punctuation reference book that someone sent me recently, and yes I do think it is possible to have a cool book about punctuation! + + Transcript available. + + +

+

+ + + It’s LEP’s 10th Birthday! + + + + – + + + 10 years ago to this day I published the first episode of LEP. 10 years later I can now say that I’m making a living from doing what I love. Thank you for listening and making my podcast what it is today! + +

+

+ + + 586. The Importance of Listening + + + + – + + + Recently I was reading a book about listening and learning English. This episode is a summary of what I read, including details of how listening fits in with learning English, some considerations of the importance of listening and also some tips for how to improve your English with audio. + +

+

+ + + 585. Alternative British Citizenship Tests with Paul Taylor + + + + – + + + Testing Paul Taylor again on his knowledge of Britishness with several alternative British citizenship tests and some very British problems. + +

+

+ + + + 584. Posh or not posh? (Part 3) with Amber & Paul + + + – + + + Amber & Paul join me to talk again about poshness, posh accents and posh celebrities. This episode is full of different British accents – posh, RP and regional differences, and lots of laughs! + +

+

+ + + 583. British Comedy: The Dirty Fork / Restaurant Sketch (Monty Python) + + + + – + + + Analysing the English in a sketch by Monty Python’s Flying Circus, and considering British communication style relating to apologising, making complaints and minimising language. + +

+

+ + + 582. Posh or not posh? (Part 2) Guess the Posh British Celebrities + + + + – + + + Can you identify which UK celebrities are posh and which are not? Let’s listen to some British celebrities speaking, check their Wikipedia pages and work out of these people are truly posh or not. You’ll hear samples of lots of spoken English in this episode and we’ll focus on accent and pronunciation. + +

+

+ + + 581. Posh or not posh? (Part 1) Understanding Posh People and Posh Accents + + + + – + + + Everything you always wanted to know about posh people, but were afraid to ask. This episode is all about poshness in people, posh accents and what it really means to be posh. + +

+

+ + + 580. Ramble / Listener Comments / Robots / Vampires / Two Taps in the Bathroom + + + + – + + + A rambling episode with responses to listener comments, LEPster meetups, English Robot 3000 & 5000, vampires leaving comments on my website and the continuing mystery of two taps in the bathroom. + +

+

+ + + 579. [2/2] IELTS Q&A with Ben Worthington from IELTS Podcast + + + + – + + + More conversation with Ben Worthington from + + IELTSPodcast.com + + , talking about English skills and exam skills, considering the whole approach and mindset that you need to succeed in IELTS. Includes questions from listeners. + +

+

+ + + 578. [1/2] IELTS Q&A with Ben Worthington from IELTS Podcast + + + + – + + + A conversation with IELTS teacher Ben Worthington about the IELTS test, with advice for getting your best score in speaking, writing, reading and listening. Includes questions from listeners. Part 1 of 2. + +

+

+ + + 577. UK vs US Slang Game (with Jennifer from English Across the Pond) + + + + – + + + In this episode I’m joined by Jennifer – a podcaster from the USA, and we test each other on our knowledge of slang from our countries. Listen and learn some informal words from British and American English. + + Notes & definitions available. + + +

+

+ + + [Website post] I was on the Rock & Roll English Podcast again / New Premium episodes coming throughout February + + + + – + + + Dear website visitors and email subscribers, This is not another new episode of the podcast. It’s just a newsy message from me to you, but I do have some audio to share… + + Click the link to read this post and listen to the audio. + + +

+

+ + + 576. Talking about Comedy, Books, Films & Music with James + + + + – + + + My brother James is back on the podcast for a 90min+ mega-ramble about things like: taking sick days from work, snowboarding, doing stand-up for the first time, the new film about Laurel & Hardy, Steve Coogan / Alan Partridge, The Beastie Boys and making mix tapes on cassettes in the 1990s. + +

+

+ + + 575. British Comedy: Paul Chowdhry + + + + – + + + Understand a stand-up comedy routine by Paul Chowdhry, a British comedian of Indian descent. We’ll break down his comedy bit by bit, understand each line and learn some English in the process. + +

+

+ + + 574. [2/2] The Rick Thompson Report: Brexit Q&A (January 2019) + + + + – + + + My dad answers some questions from listeners about Brexit. + +

+

+ + + 573. [1/2] The Rick Thompson Report: Brexit Update (January 2019) + + + + – + + + Part 1 of a double episode of the Rick Thompson Report, talking to my dad about the latest developments in the shambolic Brexit story. + +

+

+ + + 572. Worst Stand-up Gig Experiences (with Amber & Paul) + + + + – + + + Amber, Paul and Luke tell some stories of their worst ever stand-up comedy gigs. Expect some anecdotes about embarrassing and humiliating experiences on stage, and “dying on your arse”. + + Intro & outtro transcripts available + bonus audio in the LEP app. + + +

+

+ + + 571. Bill Burr’s Hilarious Plane Story – Enjoy Comedy/Storytelling in English + + + + – + + + Understand a funny anecdote by comedian Bill Burr. In this episode we’re going to do some intensive listening practice using the true story of a bizarre encounter with a man on a plane. Look out for language for travelling by plane, some American English and A LOT of + + swearing + + , particularly the F word. + +

+

+ + + 570. Learning & Teaching English with Zdenek Lukas (Part 2) + + + + – + + + Part 2 of my chat with Zdenek from the Czech Republic. In this one we talk about becoming an English teacher, taking the infamous DELTA teaching course, Zdenek’s podcast and board game, and some long-lost (and embarrassing) comedy YouTube videos I made in the pre-podcast days. + + Intro & outro transcripts available. + + +

+

+ + + 569. Learning & Teaching English with Zdenek Lukas (Part 1) + + + + + + – + + + Talking to English teacher & podcaster Zdenek Lukas from the Czech Republic about various things, including how he learned English to a high level by working on a building site in East London with a team of cockneys who couldn’t pronounce his name properly. + + Intro & outro transcripts available. + + +

+

+ + + 568. What is Luke’s English Podcast, and how can it help you with your English? + + + + – + + + What are the aims & objectives for this podcast? How can you use it to improve your English? This episode is an introduction for new listeners and a reminder for long-term listeners: This is a podcast all about learning English through listening, while having some fun in the process. + + Transcript available. + + +

+

+ + + 567. Alternative Christmas Stories & Poems / Beatles / Happy New Year from LEP! + + + + – + + + This is the last episode of LEP before the end of 2018. It’s Christmas and New Years Eve is approaching, so it’s time for the traditional Christmas episode of LEP! In this one I’m going to read some Christmas stories and a couple of poems which are a bit different to the normal stuff you get at this time of year. Also, keep listening for a funny appearance by The Beatles. + + Transcript & notes available. + + +

+

+ + + 566. The Collins Words of the Year (Part 6) 2018 with Amber Minogue + + + + – + + + The final part of this series about trending words and issues in 2018, this time with friend of the podcast Amber Minogue. Join us as we talk about jogging, picking up litter, bird watching, VAR & football, veganism, ethnic diversity in Hollywood and more. + + Notes available. + + +

+

+ + + 565. The Collins Words of the Year (Part 5) 2018 with Amber Minogue + + + + – + + + Talking to my friend Amber about some trending vocabulary and hot topics from 2018, like plastic pollution, dance crazes and the Brexit backstop. Includes discussion, language explanations, David Attenborough impressions and more. + + Notes available. + + +

+

+ + + 564. The Collins Words of the Year (Part 4) + + + + – + + + More trending vocabulary and issues of the moment, this time focusing on topics like working conditions in the gig economy, the pros and cons of instagram and a true story about a unicorn riding a bike in London. + + Transcript available. + + +

+

+ + + 563. The Collins Words of the Year (Part 3) + + + + – + + + More vocabulary explanations & discussion of big issues, including how social media affects our worldview, the pros and cons of fidget spinners and debates about gender identity, including thoughts on the new female Doctor in Doctor Who. + + Transcript available. + + +

+

+ + + 562. The Collins Words of the Year (Part 2) + + + + – + + + Vocabulary explanations and discussions of hot topics from the last couple of years. Talking about some controversial political stuff like the rise of fascism and anti-fascism, the relative popularity of UK opposition leader Jeremy Corbyn, and how the winter season changes people’s feelings about romance and relationships. + + Transcript available. + + +

+

+ + + 561. The Collins Words of the Year (Part 1) + + + + – + + + The first part of an episode series about trending vocabulary – words which have been used a lot in the last couple of years. Listen to me talk about words chosen by Collins Dictionaries as their “Words of the Year”. This first episode focuses on how publishers use big data and then lots of discussion about the 2017 word of the year, which was + + fake news. + + + Transcript available. + + +

+

+ + + 560. Sarah Donnelly Returns – Writing jokes, public speaking, doing comedy in another language + + + + – + + + Talking to comedian Sarah Donnelly about how she writes her material, advice on speaking in front of an audience and how to avoid negative feelings, performing stand-up comedy in another language, and more. Sarah is a comedian and language teacher from the US, now living in France. + +

+

+ + + 559. The Rick Thompson Report: Brexit Chaos (November 2018) + + + + – + + + Talking to my dad, Rick Thompson about recent developments in the story of Brexit – Britain’s exit from the European Union. Recorded on 18 November 2018. +
+
+
+ + + 558. Rambling in the new Sky-Pod + + + + – + + + Another solo episode, recorded in the new sky-pod. Talking about moving to the new flat, some podcast news, meeting Louis CK, WW1 remembrance, rock climbing and more… + + Some vocabulary is explained during the episode. + + +

+

+ + + A Letter from Luke – 9 Nov. 2018 + + + + – + + + No episodes for a little while – I’ve got limited internet access. This is not an audio or video episode – it’s a letter from me to you. + +

+

+ + + 557. I’m a Rambling Guy (Monologue – Autumn 2018) + + + + – + + + A rambling monologue about my recent French test, a duck-related error, responses to the Alan Partridge episodes and the Russian comedy club video, moving out of the sky-pod, and life with my wife and daughter. A video version of this episode is available for Premium subscribers in the LEP app and online. + + www.teacherluke.co.uk/premium + + + Audio available on 1 November. + + +

+

+ + + 556. With Jessica Beck from Honestly English + + + + – + + + Talking to English teacher Jessica Beck about her new website, “Honestly English” and some typical topics she talks about and teaches, including the #MeToo movement and our favourite female superheroes and comedians. + + Videos and links available. + + +

+

+ + + 555. Raphael Miller’s Summer School Report + + + + – + + + Raphael Miller (previously heard in + + episode 522 + + ) is back on the podcast to tell us about his experience of running a summer school for international teenagers in Liverpool. + +

+

+ + + 554. ODD NEWS STORIES (with Mum & Dad) + + + + – + + + Discussing some strange and funny news stories with my parents. Thanks to my Mum & Dad for their contribution to this episode. + + Transcripts, news stories and notes available. + + +

+

+ + + 553. Fighting Wildland Fires with Benny the Russian Firefighter + + + + – + + + Talking to firefighter Anton Beneslavsky (aka “Benny”) who works as the leader of an international fire fighting project. We talk about becoming a firefighter, the work that he’s doing with Greenpeace around the world and the very serious threat of climate change. + +

+

+ + + 552. Discussing Comedy & Culture (with Amber & Paul) + + + + – + + + Amber, Paul and I listen to a comedy video which is often sent to me by listeners to this podcast. The video is about the experience of trying to understand people when they speak English. Let’s see what the pod-pals think of this comedy from another country. The conversation then turns to comedy, culture, language and some more Alan Partridge. I read out some listener comments at the end of the episode. + + Notes, transcripts and links available. + + +

+

+ + + 551. Catching Up with Amber & Paul #8 – Stereotypes + + + + – + + + Chatting to the pod-pals Amber & Paul again and this time the conversation turns to the subject of national stereotypes, and why Paul has bleached his hair blond. + + Notes & transcripts available. + + +

+

+ + + 550. British Comedy: Alan Partridge (Part 3) + + + + – + + The final part of a trilogy of British Comedy episodes about Alan Partridge. This time we’re analysing some of the quieter and darker moments in Alan’s life as he rambles about flasks, cars, seat belts, badges and having an air bag explode in your face. Expect analysis of both the comedy and the language. + + Vocabulary lists and transcript available. + +

+

+ + + 549. British Comedy: Alan Partridge (Part 2) + + + + – + + + Building on the previous episode, this time we’re looking at how Alan Partridge interacts with people in his every day life and how this results in some classic moments of British TV comedy. All the material is explained with plenty of vocabulary to learn. + + Check the page for notes and transcripts. + + +

+

+ + + 548. British Comedy: Alan Partridge (Part 1) + + + + – + + + Continuing the comedy theme by analysing a character that most British people know but learners of English find difficult to understand. + + Check the page for transcripts, notes and videos. + + +

+

+ + + 547. Best Jokes from the Edinburgh Festival Fringe + + + + – + + + Studying some jokes told by stand-up comedians at the Edinburgh Fringe comedy festival, and dissecting them for vocabulary. Learn English with some jokes and find out about typical joke structures used by stand-up comedians. + + Transcripts and jokes available. + + +

+

+ + + 546. Death by Meteor + + + + – + + + This episode is called Death By Meteor and it’s all about asteroids, space, science, maths, astrophysics and the end of the world! + + Transcript available. + + +

+

+ + + 545. The Hitchhiker by Roald Dahl (Short Story) + + + + – + + + Learn English with this short story by British writer Roald Dahl. + + Intro transcript and story script available + + . + +

+

+ + + 544. The Rick Thompson Report: No Deal Brexit + + + + – + + + Talking to my dad about the current Brexit situation, including what could actually happen in the UK if we leave the EU with no deal. Expect language relating to politics, economics and the big issues of the day. + + Intro and outtro transcripts available. + + +

+

+ + + 543. Britain’s First Insect Restaurant Opens + + + + – + + + Talking about the creepy subject of eating insects, which might be the solution to many of the problems that humans face as a species. This episode includes discussion of eating habits, environmental issues and some insect-related idioms and expressions. + + Transcripts and vocabulary lists available. + + Bon appetit! + +

+

+ + + 542. Talking Rubbish & Just Having Fun with The Thompsons + + + + – + + + Talking to my dad, mum and brother about all manner of topics, including: + + Space, climbing mountains, British comedy, fishing, earworms, tattoos, David Beckham, jokes, citizenship tests, baby monkeys, ghosts and celebrity impressions + + . + + Intro and outtro transcripts available. + + +

+

+ + + 541. What British People Say vs What They Mean + + + + – + + Examining British communication style and debunking a few myths about how British people communicate. This episode is based on a famous infographic called “What British People Say vs What They Really Mean” or “The Anglo-EU Translation Guide”. It contains lots of thoughts about how direct and indirect cultures communicate with each other, and some samples of business English, with a few improvised scenarios too! + + Transcript available. + +

+

+ + + 540. What’s Up? Post World Cup / News / LEP Meetup London / Super Mario Earworms + + + + – + + + Giving some news, summing up the World Cup, England out, France win, and some chat about music that gets stuck in your head. Get some English stuck in your head with this episode. + + Transcript available! + + +

+

+ + + 539. World Cup 2018 [3] Is It Coming Home? + + + In this one I’m in England talking to my Dad and my brother about the world cup including England’s performances, penalties, World Cup songs, diving, VAR and predictions for the semi finals. +

+

+ + + 538. World Cup 2018 [2] The Second Round / Listener Comments + + + + – + + + Talking about the second round of the World Cup in Russia, including comments about the teams, the games, the issues, England’s penalties vs Colombia and the way football commentators speak. Listener comments are read out. + + Notes available. + + +

+

+ + + 537. How Olly Richards Learns a Language (Part 2) Intermediate Plateau / The Magic of Story / Pronunciation & Personality / Classroom vs Self-Guided Learning + + + + – + + + The rest of my conversation with polyglot Olly Richards. + +

+

+ + + 536. How Olly Richards Learns a Language (Part 1) Compelling Material / Input-based Learning + + + + – + + + Talking to polyglot Olly Richards about the benefits of listening, reading and using stories to learn English. Full of insights and strategies for effective language learning. + + Transcripts and notes available. + + +

+

+ + + 535. World Cup 2018 [1] + + + + – + + + Talking about the World Cup 2018 in Russia, including comments about the teams, players, groups, VAR and England’s performances. + + Notes & transcripts available. + + +

+

+ + + LEP PREMIUM is now live – teacherluke.co.uk/premium + + + + – + + + LEP PREMIUM announcement. www.teacherluke.co.uk/premium This is an announcement to let you know that LEP Premium is now ready to go. If you want to superpower your English into the 9th dimension, then you can get started by signing up for LEP Premium at www.teacherluke.co.uk/premium + +

+

+ + + 534. Sugar Sammy Interview (Part 2) Language & Comedy + + + + – + + + Part 2 + + of my chat with hilarious Canadian stand-up comedian Sugar Sammy, talking about his 4 languages, TV shows from our childhood, copying Indian accents, language-related controversy in Quebec, Sammy’s crowd-work skills, stories of difficult gigs in the UK, and our thoughts on recent Star Wars films. + + At the end of the episode you can hear my spoiler-free review of “Solo: A Star Wars Story”. + + + Transcriptions and notes available. + +

+

+ + + 533. Sugar Sammy Interview (Part 1) Multilingual Comedian + + + + – + + + Sugar Sammy is a very popular and famous comedian from Canada. He’s often described as Montreal’s #1 stand up comedian. He speaks 4 languages, he has performed comedy in lots of countries. He might be coming to your country soon to make you laugh. Ladies and gentlemen – meet the wonderful Sugar Sammy! + + Intro transcript available. + + +

+

+ + + 532. A History of The World Cup + + + + – + + Here’s my history of The World Cup. It covers all the World Cups we’ve had since 1930, focusing on the key events with a few dodgy jokes along the way. You can read + + 99% of the transcript on the page for this episode + + . +

+

+ + + 531. Crime Vocabulary Quiz (with Moz) + + + + – + + + Test yourself and learn various verbs and nouns related to crime. Features some amusing chat and anecdotes with Moz from the Murder Mile True Crime Podcast. + + Transcripts and vocabulary lists available. + + +

+

+ + + 530. More Murder Stories (with Moz) + + + + – + + + My friend Moz (Michael J. Buchanan-Dunne) from the Murder Mile True Crime Podcast tells us some more true stories about murders from London’s past. Contains some gruesome details and explicit descriptions, and some fascinating and unbelievable true stories! + + Intro and outtro transcripts available. + + +

+

+ + + 529. The “M” Word (with Andy Johnson) + + + + – + + + Friend of the podcast Andy Johnson returns to give us some news and tell some stories all related to things that begin with the letter “M”. + + Intro & outtro transcripts available. + + +

+

+ + + 528. The Royal Wedding (with Mum) + + + + – + + + Talking to my mum about the royal wedding between Prince Harry & Meghan Markle. Describing the ceremony, the guests and the dress, and discussing the place of the monarchy in modern British life. + + Some transcriptions and vocabulary available. + + +

+

+ + + 527. Can Paul Taylor Pass The UK Citizenship Test? + + + + – + + Testing Paul Taylor’s knowledge of British life, history and culture and discussing the “Life in the UK” citizenship test. Practise listening to British English natural speech, learn facts about the UK and have a laugh as Paul gets angry about this test for people who want to become UK citizens. Will Paul actually pass the test? Listen to find out what happens. + + Transcriptions and notes available + +

+

+ + + 526. Being a Tourist (with Paul Taylor) + Video + + + + – + + + Catching up with Paul Taylor and talking about his recent trips to Japan & Barcelona, the pros and cons of being a tourist and some recommendations for people visiting London and Paris as tourists. + + Video available on the website and in the LEP app. + + +

+

+ + + Please VOTE for LEP in the British Podcast Awards 2018 – Voting Ends on Thursday 17 May + + + + + + Help me build my pod-castle! Vote here: + + www.britishpodcastawards.com/vote + + Click the link and search for “luke’s english podcast” Thank you to everyone who’s already voted. Fingers crossed! 🤞🤞🤞 🗳🇬🇧 + + Vocabulary in this Mini Episode listed on the page. + + +

+

+ + + 525. Ninja August / Podcast Corrections / Useful Japanese Cat (Listener Comments & Questions) + + + + – + + + Responding to more comments and questions from listeners, including some rambling about public holidays in France, why May is like ‘ninja August’, some corrections to what I said about bats and Stephen Hawking on the podcast and the story of an amazing useful cat from Japan. + + Notes & transcriptions available. + + +

+

+ + + 524. Tricky Pronunciation Debates / “Either” “Neither” / Song + Comedy Sketch + + + + – + + + Talking about words which can be pronounced several ways, words which are often pronounced incorrectly by native speakers and the debates, arguments and frustration that arises between native speakers as a result. Includes the “You Say Tomato…” song and the Grammar Nazi sketch, explained. + + Transcript & notes available. + + +

+

+ + + 523. Tips for Learning English with Films & TV Shows (with Cara Leopold) + + + + – + + + Talking to a fellow English teacher about advice for using TV shows and films to learn English, both with and without subtitles. + + Notes & transcriptions available. + + +

+

+ + + 522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller) + + + + – + + + Talking to my ex-colleague Raphael Miller about his new summer school for teenagers as well as many other topics, including British social and communication culture, growing up in Liverpool, studying at Oxford University, the famous Star Wars actor Raphael knows and more… + + Transcriptions and Links Available. + + +

+

+ + + 521. Talking about Pets (with James) + + + + – + + Listen to this conversation to hear my brother and me remembering the pets we had as children and discussing some issues related to keeping animals as pets. + + Intro & Ending Transcripts available. + +

+

+ + + 520. Idioms Game & Chat Part 2 (with Andy Johnson) + 18 More Idioms & Vocab Items Explained + + + + – + + + The second part of my chat with Andy Johnson. Listen out for 18 more idioms which will be explained later. Topics include: Twitter abuse, + + the other Andy Johnson + + , training for the London Marathon + more. + + Transcripts and vocabulary definitions available. + + +

+

+ + + 519. Idioms Game & Chat (with Andy Johnson) + 25 Idioms Explained + + + + – + + + A conversation with Andy Johnson including loads of idiomatic expressions and their explanations. First you can listen to a rambling chat with Andy and then I’ll explain 25 idioms that came up during the conversation. Part 2 coming soon… + + Transcriptions, Vocabulary list & Definitions available. + + +

+

+ + + 518. Grammar Questions (Part 1) Present Perfect Continuous / Future Continuous / Language of Newspaper Headlines + + + + – + + + Answering grammar questions from listeners, with details about verb tenses (including present continuous vs present perfect continuous & future continuous vs going to) and the language of newspaper headlines. Includes references to The Queen, The Legend of Zelda and a lot of pizza. + + Transcriptions & grammar notes available below. + + +

+

+ + + 517. Professor Stephen Hawking (An Obituary) + + + + – + + + I woke up this morning to the news that Stephen Hawking had died and I thought – I really must talk about this on the podcast. + + Vocabulary list available. + + +

+

+ + + 516. Paul McCartney’s Spider Story + + + + – + + + Learn English from an anecdote told by Sir Paul McCartney. Includes intensive listening, a couple of Beatle stories with vocabulary and pronunciation explained and some funny McCartney impressions. + + Videos available. + + +

+

+ + + 515. Becoming “Maman” with Amber & Sarah – Bringing Up Children The French Way + + + + – + + + In this episode I’m talking to friends of the podcast Amber Minogue and Sarah Donnelly about the subject of raising children in a foreign country – in this case, France. So this is an episode all about cross-cultural experiences, specifically relating to parenthood. It’s also about a new podcast and stage show which Amber & Sarah have just started. + + Transcriptions, notes and links available. + + +

+

+ + + 514. What’s on the table? (with Fred & Alex) + + + + – + + + In this episode you can hear me chatting to Fred Eyangoh and Alex Quillien and discussing various topics including growing up in different countries, recognising different accents in English, religious backgrounds, movie re-boots, Arnold Shwartzenegger going “nyarrrgh” and more. Fred and Alex are both stand-up comedians living in Paris who perform in English. + +

+

+ + + 513. General Ramble / News / Comments + + + + – + + + A general ramble about things like: dishwasher sounds, online clickbait, updates to the LEP app, my recent appearances on some OPP (other people’s podcasts), LEPster meetups and some responses to recent comments on the website. + + Notes, links & videos available. + + +

+

+ + + [Website-only] I was on the “Becoming Maman” podcast with Amber Minogue & Sarah Donnelly + + + + – + + + I was interviewed on Amber & Sarah’s new podcast, called “Becoming Maman” and we talked about becoming a dad and raising bilingual children. You can listen to the interview here. + + Becoming Maman is a new podcast by Amber Minogue and Sarah Donnelly. It’s all about becoming a mum in France. + + +

+

+ + + 512. My Experiences of (not) Learning French [Part 2] Learning Language in a Classroom vs Learning On Your Own + + + + – + + + Talking more about my experiences as a student of French, this time reading from notes I took during my French lessons (when I should have been focusing on the class!) and some considerations about learning a language in a classroom and learning on your own. + + Notes & transcript available. + + +

+

+ + + 511. My Experiences of (not) Learning French [Part 1] + + + + – + + + Sharing my experiences of learning French (or not learning it). My French and Me – How I learned some French as a child and how I’m failing to learn it properly as an adult. Includes conclusions about language learning, immersion and the importance of motivation, habit and simply applying yourself. + + Notes & transcriptions available. + + +

+

+ + + 510. Philosophy Quiz (with Amber & Paul) + + + + – + + + In this episode you can listen to Amber, Paul and me as we take an online quiz and try to find out what school of philosophical thought we belong to. Are we + + empiricists, epicurianists, existentialists, hedonists, humanists, platonists, skeptics or stoicists + + ? Listen on to find out more and to hear a full-on discussion of + + life, the universe and everything + + ! + +

+

+ + + 509. What’s it all about? (Philosophy and Language Learning) + + + + – + + + This episode is all about philosophy and how this applies to language learning. Listen to me describing 8 different ‘schools’ of philosophical thought while also considering how they relate to our approach to learning languages, and other ideas. + + Transcript available. + + +

+

+ + + 508. Six True Crime Stories from Victorian England, Told by My Dad + + + + – + + + Learn English by listening to Rick Thompson tell some true stories of petty crimes committed in an English town in 1851. + + Notes and transcriptions available. + + +

+

+ + + 507. Learning English with UK Comedy TV Shows + + + + – + + + Recommendations and descriptions of British comedy TV shows with some comments about how to use comedy TV shows to learn English. + + Transcript available + + . + +

+

+ + + 506. One of Britain’s Favourite Poems + + + + – + + + Listen to readings of “If—” by Rudyard Kipling, a popular poem from England. Includes analysis of the vocabulary and the themes in the poem and also a chance to enjoy the unique voice of Sir Michael Caine – with some funny impressions too. + + Transcript, vocabulary and videos available + + . + +

+

+ + + 505. A Chat with Dad & James about Star Wars: The Last Jedi (with Vocabulary) + + + + – + + + Here is the third and final part of this trilogy of episodes about the latest Star Wars film. In this one you’ll hear a conversation between my Dad, my brother and me that I recorded just after we’d seen the film a couple of weeks ago. + + Vocabulary explained in the episode and available on the page. + + +

+

+ + + 504. My Review of Star Wars: The Last Jedi (Part 2) + + + + – + + + Continuing to talk about the latest Star Wars film at length(!) – going through the storyline and giving my thoughts on the characters, events and the audience backlash. + + Transcript available. + + +

+

+ + + 503. My Review of Star Wars: The Last Jedi (Part 1) + + + + – + + + Talking about the new Star Wars film including the audience reaction, English accents you can hear in Star Wars, and a run-through of the plot with my thoughts about the events and characters. Plot spoilers throughout the episode! + + Transcript available. + + +

+

+ + + 502. The Birth of My Daughter + + + – Talking about the birth of my baby daughter, including accounts of the main events and how it all felt. Listen carefully for descriptive vocabulary for describing emotions and feelings as well as the language of childbirth previously explained in episodes 491 and 492. + + Intro transcript available. + +

+

+ + + 501. Merry Christmas! / Listener Correspondence + + + + – + + + Wishing you a Merry Christmas, giving some news and responding to some messages from listeners about vocabulary lists, pronouncing “can’t” without sounding rude and more… + +

+

+ + + Observations on the Paris Metro… from Inside the Metro (Listen to my appearance on Oliver Gee’s podcast “The Earful Tower”) + + + + – + + + Hello website LEPsters! Here is some more listening you can do while waiting for the next episode of LEP. I was recently invited onto The Earful Tower Podcast by Oliver Gee (remember him from episode 495?) We recorded an episode all about the Paris Metro + + while riding the Paris Metro + + . You can listen to it here. + +

+

+ + + 500. EPISODE 500 CELEBRATION! (PARTS 1 & 2) + + + + – + + + Celebrating 500 episodes of LEP with a mega-ramble featuring lots of messages from listeners, expressions of gratitude, a cool announcement for all my listeners, some singing, some talk of becoming a dad, the future of the podcast, Star Wars, and loads of fun and good times. Thank you for listening! + +

+

+ + + 499. Prince Harry & Meghan Markle / Royal Family Quiz (with Amber) + + + + – + + + Talking to Amber about the UK’s Royal Family, including our thoughts on the upcoming wedding between Prince Harry and Meghan Markle, some royal gossip & rumours, and also a Royal Family Quiz with questions about the monarchy today and in history. + + So, expect to hear our thoughts and some facts about this very traitional British institution. + + Notes available. + +

+

+ + + 498. The Rick Thompson Report: Brexit Negotiations + + + + – + + + Talking to my Dad about the current situation with the UK’s Brexit negotiations with the EU. Listen to hear explanations of what is going on with Brexit, how Northern Ireland is involved, what motivates Brexiters and some comments about other bits of international news + + – all delivered by my Dad with his clear and coherent English. + + Notes and transcriptions available. + +

+

+ + + 497. Film Club: Withnail & I (with James and Will) + + + + – + + + Talking about a classic British film which not many learners of English know about. Listen for explanations of the film, its appeal, descriptions of the characters and events, the type of people who like the film and a few bits of dialogue too. + + Notes and videos available. + + +

+

+ + + 496. RAMBLECAST + + + + – + + + Rambling about life, learning English, Star Wars, screwing up paper into a ball and more… + +

+

+ + + 495. Australian Stereotypes and Cliches (with Oliver Gee) ~didgeridoo sounds~ + + + + – + + + Discussing stereotypes and clichés about Australia with podcaster Oliver Gee who comes from a land down under. Learn about Australian English, Aussie accent, Aussie slang and exactly what you should say whenever you meet a true blue Aussie, mate! + + Vocabulary list available. + + +

+

+ + + 494. Who Wants to be Good at English? (The Rematch) with Rick Thompson + + + + – + + + Testing my Dad on his knowledge of English, using words that are frequently confused by native English speakers. Will my dad be able to identify the words, spell them and explain the differences? Listen to learn 20 words and phrases which native English speakers often get wrong. + + You will also hear Dad and me discussing topics such as catching a squirrel, what he would say to Donald Trump and Paul McCartney if he met them, stories of police drug busts at university, how my dad would deal with a zombie apocalypse, and which one is worse – Brexit or Yoko Ono’s ‘singing’? + + Vocabulary list with definitions and examples available. + +

+

+ + + 493. Catching Up with Amber & Paul #7 (Human Pollution) + + + + – + + + Amber and Paul are back on the podcast as we catch up with their recent news and the conversation goes off on many tangents covering subjects such as: pollution and fog in Paris, a possible new word – ‘pog’, other potential new words of the year, Harvey Weinstein, + + wanking in the office, ‘human pollution in the swimming pool’, Paul’s recent showbiz news, seeing The Rolling Stones on stage and a slightly worrying email from a LEPster. + + Includes a cameo appearance by young Hugo, saying his first words on the podcast. + +

+

+ + + 492. Becoming a Dad (with Andy & Ben) Part 2 + + + + – + + + The second part of this conversation with Andy Johnson and Ben Butler, and we talk about the moment of childbirth and take a quiz about becoming a father. Vocabulary is explained in the second part of the episode. + + Vocabulary list available. + + +

+

+ + + 491. Becoming a Dad (with Andy & Ben) Part 1 + + + + – + + + A conversation and vocabulary lesson about childbirth and becoming a father, with Andy Johnson and Ben Butler from The London School of English. Listen to Andy and Ben talking about their experiences of becoming parents, how their babies were born and more. Vocabulary is explained in the second half of the episode. + + Vocabulary list available. + + +

+

+ + + 490. Discussing Friendship – with Martin and Dan The Man from Rock n’ Roll English (Friendship Phrasal Verbs) + + + – In this episode of the podcast I am talking to Martin Johnston and his mate Dan The Man from the Rock n Roll English Podcast and we’re going to teach you some phrasal verbs and other expressions relating to friendship, while also putting their friendship to the test. Martin and Dan are lifelong friends. They know each other very well but they spend a lot of their time bickering and getting at each other. What’s going on in this friendship? Do they really like each other or not? Let’s find out in this episode and you can learn lots of vocabulary while we’re doing it. + + Vocabulary list and explanations available. + +

+

+ + + 489. A Rambling Conversation with Mum (Part 2) + Vocabulary + + + + – + + + Here’s part 2 of this conversation with my Mum in which you can hear us wittering on about the bookshop where Mum works, some of the books she’s read recently, and some of her podcast and film recommendations. + + Vocabulary is explained at the end, and there’s a vocabulary list with definitions available. + + +

+

+ + + 488. A Rambling Conversation with Mum (Part 1) + Vocabulary + + + + – + + + A conversation with my (lovely) mum in which we generally witter on about a number of different things including some British history, ways of describing rain, different expressions for talking (like rambling and wittering), my mum’s accent, what she thinks of this podcast and some of her podcast recommendations. + + Vocabulary is explained after the conversation and there is a vocabulary list available below. + + +

+

+ + + 487. Learning Languages and Adapting to New Cultures (with Ethan from RealLife English) + + + + – + + + A + + conversation about travelling and learning languages with Ethan from RealLife English. Ethan is very well-travelled, having lived in at least 6 different countries. He’s also learned a few different languages to a good level as an adult. Let’s talk about his advice for adapting to new cultures and learning languages in adulthood. + + Vocabulary notes and language test available. + +

+

+ + + 485. & 486. Difficult Words to Pronounce in English (with Paul Taylor) (Parts 1 & 2) + video + + + + – + + + This is a double episode with two audio episodes on one page, and it’s all about difficult pronunciation in English. Listen to Paul Taylor and me discussing the tricky relationship between spelling and pronunciation. There are lots of jokes, impressions, funny accents and useful comments about this important area of the English language. Use this episode to avoid some very common mistakes in English pronunciation, and try not to laugh on the bus while you’re listening! + + Check this episode page for word lists, transcriptions and my video of 40+ difficult words to pronounce in English. + + +

+

+ + + 484. Try not to Laugh on the Bus (with Paul Taylor) + + + + – + + + A conversation with Paul Taylor involving several cups of tea, recipes for French crepes, our terrible rap skills, a funny old comedy song about English workmen drinking tea, some improvised comedy role plays and a very angry Paul ranting about bad customer service in France! Your challenge is to listen to this episode in public without laughing out loud, + + especially in the second half of the episode + + . Good luck, may the force be with you. + + Vocabulary list, song lyrics, definitions and a quiz available. + + +

+

+ + + I was invited onto The Flat Earth Podcast, and this is what happened… [Website only] + + + + – + + + I got into a debate with some ‘flat earthers’ – guys who believe that the earth is flat. It was pretty intense, and you can listen to it all here on this page. + +

+

+ + + 483. A Rambling Chat with Moz + + + + – + + + The second part of my conversation with my friend Moz, this time covering subjects such as podcasting vs YouTube, bathing naked in a Japanese spa, sharing personal information online (like a story of bathing naked in a Japanese spa), the role of artificial intelligence & social media, murdering mosquitoes and meeting a crack addict on the streets of London. + + Vocabulary list and memory quiz available. + + +

+

+ + + 482. The Murder Mile True Crime Podcast (with Moz) More Creepy Stories of Murders in London + + + + – + + + My friend Moz, who runs a murder-themed tour company in London, is back on the podcast to talk about some more creepy stories of crimes from London’s history and his new podcast. + + Vocabulary list available. + + +

+

+ + + [Website content] Luke on the RealLife English Podcast + + + + – + + + I was on the RealLife English Podcast and we talked about why I became an English teacher, doing James Bond impressions and also + + comedy & how to use humour in learning English + + . You can listen to it here and get more details about Real Life English from their website. Enjoy! + +

+

+ + + 481. Holiday Diary (Final Part) “Endeavour to Persevere” + + + + – + + + The final part of the holiday diary series. This one is about visiting the Navajo Nation, meeting some Navajo people, seeing more natural wonders at Monument Valley and The Grand Canyon, a couple of film recommendations our experience of the solar eclipse and a few more anecdotes about the rest of our road trip. + + Notes and transcript on the page. + + +

+

+ + + 480. Holiday Diary (Part 7) BIG ROCKS! + + + + – + + + In this episode I’m going to continue telling you stories of my recent holiday and there will be descriptions of impressive rocky landscapes, a sort of geology lesson and a brief history of planet earth. Expect plenty of solid descriptive chunks of vocabulary as this holiday diary continues. + + Notes & script available. + + +

+

+ + + 479. Holiday Diary (Part 6) The Madness of Las Vegas / 11 Gambling Idioms + + + + – + + + This episode includes anecdotes and descriptions of our short visit to Las Vegas, including stories of more rental car issues, Las Vegas craziness, winning and losing $$$ and 11 English idioms that come from gambling. + + Vocabulary list and definitions available. + + +

+

+ + + 478. Holiday Diary (Part 5) An Encounter with The Church of Scientology + + + + – + + + More thoughts and comments inspired by things that happened during my recent holiday. In this one I’m discussing stories about the Church of Scientology and the claims that it is a cult. Listen to find out what happened in this part of my trip. + + Check the episode page for the vocabulary. + + +

+

+ + + 477. Holiday Diary (Part 4) The Fresh Prince of Bel Air + + + + – + + + The holiday diary continues and in this chapter we visited Bel Air in L.A. and so here is an analysis of the lyrics to Will Smith’s rap from “The Fresh Prince of Bel Air”, a famous TV show (and a very serious piece of work, haha) from the 90s. + + Vocabulary, lyrics and definitions available on the page. + + +

+

+ + + 476. Holiday Diary (Part 3) Astronomy, Astrology & Flat Earth Conspiracy Theory + + + + – + + + In this episode I talk about visiting the fantastic Griffith Observatory and then ‘go off on one’ about Astronomy vs Astrology and ludicrous flat earth conspiracy theories. Includes various bits of vocabulary throughout the episode. + + Check the page for notes and transcripts. + + +

+

+ + + 475. Holiday Diary (Part 2) Modern Art: Is it amazing, or is it rubbish? + + + + – + + + Talking about some modern art which I saw while visiting several galleries in Los Angeles. Includes descriptions of different movements in modern art, details about some famous artists and their work, some thoughts about whether modern art is really amazing, or maybe just a load of pretentious rubbish! (Spoiler alert: it depends) + + Vocabulary available. + + +

+

+ + + 474. Holiday Diary (Part 1) New Arrival, New Destinations + + + + – + + + I’m back from my holiday so here’s a new episode of the podcast. In this one you’ll hear me talking about some recent news (including quite a big announcement) and then an account of what we did on holiday including some descriptions, opinions and stories. N + + otes and vocabulary available on the page. + + +

+

+ + [Website only] + + A History of British Pop – A Musical Tour through James’ Vinyl Collection + + + + – + + + This is a LONG musical mix using James’ vinyl record collection, with added comments by James and me. Think of it as a musical journey through a history of British pop, all on original vinyl records. + +

+

+ + + 473. Explaining the Rules of Cricket (with Dad) + + + + – + + + Everything you need to know about the world’s 2nd most popular spectator sport, cricket. I’m joined by my Dad, Rick Thompson and we describe the rules, the appeal of the game and also some expressions in English that come from cricket. + + Notes and vocabulary available on the page. + + +

+

+ + [Website Only] + + Star Wars DVD Commentary (with James) + + ***Contains swearing – Not suitable for Children*** + + + – + + H + + ere is a Star Wars DVD commentary by James and me. If you’re not a Star Wars fan, this might not be for you. This audio track is full of rambling, comedy sketches, impressions and descriptions of what happens in this classic film from 1977. Watch Star Wars on your TV or computer, and listen to our commentary at the same time. May the force be with you. + +

+

+ + + Why does the UK have so many accents? (Recorded February 2017) + + + + – + + + This episode was originally recorded in February 2017 and is being uploaded in August 2017. In this episode I answer several questions from listeners about accents, including how regional accents occur in the UK and why there are so many accents there. + + Video available. + + +

+

+ + [Website content] + + + + Luke’s Criminal Past (ZEP Episode 185) + + + + – + + + Learn some crime-related idioms and find out some things about Luke’s back-story that may or may not be true. This is an episode of Zdenek’s English Podcast, originally posted by Zdenek on 4 August. + +

+

+ + + 472. Andy’s Survival Story / Why Andy Runs Marathons (with Andy Johnson) + + + + – + + + Talking to Andy about why he runs marathons, including vocabulary relating to doing exercise, health, fitness, technique, injuries and medical care. This one contains a moving true story about recovering from a serious illness. + +

+

+ + + 471. Stepping on Lego, Self-directed Learning, Accents (with Andy Johnson) + + + Talking to Andy about stepping on Lego, Andy’s job, Andy’s new conference presentation about self-directed language learning, Andy’s accent and British/American English. +

+

+ + + I’m going on holiday – back in a few weeks! + + + A quick episode with a few announcements about the podcast. +
+ + + 470. Understanding the Liverpool Accent + + + Helping you to understand and appreciate the Liverpool accent and Scouse English, featuring clips of comedy, a short history of Liverpool and interviews with famous footballers, actors and musicians. +
+ + + 469. British Comedy: John Bishop + + + Helping you to understand a comedian with a Liverpool accent – learn vocabulary, culture and accents in English. +
+ + + 468. Punk – Music & Culture (with James) + + + Learn about punk music and culture from the UK, with James. +
+ + + 467. A Boiling-Hot Evening Ramble – Comments & Questions + + + In my boiling-hot flat, talking about the benefits of playing football, giving encouragement to a shy new listener, some prepositions with transport, comparing formal and informal styles and commenting on the risks of using humour in emails. +
+ + + 466. Get this word into your life + + + Learn lots of phrases and uses of the word GET that you heard in episodes 464 and 465. +
+ + + 465. How I make episodes of the podcast (Part 2) + + + Talking about the technical side of making a podcast, with a few funny anecdotes too. +
+ + + 464. How I make episodes of the podcast (Part 1) + + + Talking about the creative side of making podcast episodes, including some thoughts on how to come up with ideas and how to speak in front of an audience. +
+ + + 463. News, Comments & Questions + + + Giving some news, responding to comments & questions, rambling about new shoes and getting lost in the jungle. +
+ + + 462. British Comedy: Bill Bailey + + + In this episode I talk to you about one of my favourite stand up comedians from the UK. We’re going to hear some of his comedy and use it to learn English. +
+ + + 461. 25 Deceptively Difficult Questions (with Amber, Paul & Sarah) + + + An episode about the tricky little questions that we use when socialising. What are the appropriate answers? What are the subtle differences? How do native speakers use these questions? Can you take the test and get all the right responses? +
+ + + 460. Catching Up With Amber & Paul #6 (feat. Sarah Donnelly) + + + Conversation and language analysis with the podpals and guest Sarah. Talking about being married to a foreign person, bringing up bilingual kids, and slang from Australia and Northern Ireland. Vocabulary is explained at the end. +
+ + + 459. Lazing on a Sunny Afternoon + + + Rambling on about so-called “facts” I found on the internet, while sitting in direct sunshine wishing I had beer. +
+ + [Website content] + + I was on The Rock n’ Roll English Podcast and The Earful Tower Podcast this week + + + Listen to my appearances on several other podcasts. +
+ + + 458. The Rick Thompson Report: Post-Election 2017 + + + Talking to my Dad about the results of the 8 June general election in the UK. +
+ + + 457. Conclusions about Language Learning from the David Crystal Interview (Part 2) + + + Considering the points made by Prof. David Crystal in episodes 455 and 456 and how they relate to learning English. +
+ + + 456. Conclusions about Language Learning from the David Crystal Interview (Part 1) + + +
+ + + 455. David Crystal Interview (Part 2) Questions from Listeners + + + Talking to the world’s top writer and lecturer on the English language, Professor David Crystal. In this episode, David answers questions from listeners. +
+ + + A Message from Amber + + + Amber’s history podcast is now available on itunes and at + + panamepodcast.com + +
+ + + 454. David Crystal Interview (Part 1) Professor of Linguistics + + + Talking about language with one of the world’s top experts on linguistics, Professor David Crystal. +
+ + + 453. The 36 Questions that Lead to Love (with Amber & Paul) + + + Listen to Amber, Paul and me answering questions designed by psychologists to help couples or friends become closer and more intimate. +
+ + [Website content] + + + + I was invited onto the “English Across The Pond” Podcast + + + and we talked about humour – check it out here. +
+ + + 452. A Conversation About Language (with Amber & Paul) + + + Discussing language with Amber & Paul, including issues such as errors made by native speakers, language change, whether language standards are declining, the effects of technology on language and how to cut an avocado without injuring yourself. +
+ + + 451. Film Club: Alien Covenant + + + Rambling about the Alien franchise and a review of the new film “Alien: Covenant”. +
+ + + 450. Comments & Questions + + + Going through questions from the comment section with some grammar, some vocab, some reactions to recent episodes and some bits relating to how you can continue to push your English with this podcast. +
+ + + 449. Film Club: Touching the Void (Part 2) Learning a Language is Like Climbing a Mountain + + + Part 2 of this Film Club episode looking at the award-winning documentary “Touching the Void” which tells the story of a mountain climbing expedition which goes wrong. Listen to this episode and then watch the film on Netflix or DVD for that extra bit of English input. Includes comments about motivation and attitude for dealing with any challenge, including learning a language to fluency. +
+ + + 448. Film Club: Touching The Void (Part 1) Learning a Language is Like Climbing a Mountain + + + A film club episode about the award-winning documentary film “Touching the Void” about a mountain climbing expedition which goes wrong. It’s an amazing true story and there are lots of things to learn from it, including lessons about motivation and attitude towards any challenge. +
+ + + 447. What is this, British Humour? (with Amber Minogue) + + + Talking to Amber about the subject of my recent British Council Teacher Talk. What is British humour? What does it tell us about British culture and communication style? What are the typical forms of humour in the UK? +
+ + + 446. British TV: Top Gear + + + Talking about Top Gear, one of the UK’s most popular television programmes. This episode features lots of vocabulary related to cars, but a lot more too including your guide to how to speak like Jeremy Clarkson. +
+ + + 445. British Podcast Award / Hello to New Listeners / 17 Vocabulary Expressions + + + LEP won the bronze medal in the Listeners’ Choice category at The British Podcast Awards. Thanks for voting! +
+ + + 444. The Rick Thompson Report: Snap General Election 2017 + + + Politics is back on LEP as I talk to my Dad about recent developments in the UK, specifically the General Election which is due to take place on 8 June. +
+ + + 443. The Trip to Japan (Part 2) + + + Describing my recent trip to Japan and exploring the culture of the Land of the Rising Sun. +
+ + + 442. The Trip to Japan (Part 1) + + + Describing my recent trip to Japan and exploring the culture of the Land of the Rising Sun. +
+ + + 441. Andy Johnson at the IATEFL Conference + + + Talking to Andy about the world’s biggest conference for English teaching, plus more conversation about millennials, advice on giving presentations and some fun anecdotes. +
+ + + 440. This Pile of Books on my Desk + + + Talking about a pile of 16 (mostly) unread books which has been sitting on my desk for months. +
+ + + 439. Reading Books to Learn English + + + Recommending some self-study books for improving your grammar, pronunciation and vocabulary, talking about the value of reading for your English and some ways you can use books to improve your English in general. +
+ + + 438. Hi Luke, I have a question! + + + Another episode done in a similar style to the last one, with some news, some rambling and some questions and comments from the website. Topics in this episode will include: My live comedy show in Tokyo on 13 April, LEPster meetups, humour, grammar, understanding TV and Movies, Breaking Bad, Logan and more… +
+ + + 437. Ramble News – 31 March 2017 + + + A rambly episode with some news from the UK, some comments, some questions, some updates about LEPster meetups in Moscow, Tokyo and London and so on. +
+ + + 436. The Return of The Lying Game (with Amber & Paul) [Video] + + + Amber, Paul and I play another round of The Lying Game, in which we each tell a story and the others have to guess if it’s true or a lie. Listen for story telling, questions and general fun, plus some jokes at the end of the episode. Video available. +
+ + + I was interviewed on “My Fluent Podcast” by Daniel Goodson + + + I talked to Daniel about learning French, doing LEP and plans for the future. +
+ + + 435. Catching Up With Amber & Paul #5 [Video] + + + Amber & Paul are back on the podcast in this episode as we respond to some questions and comments from the website and social media. Video available. +
+ + + 434. Interview with Paul Taylor – “WTF France?” [Video] + + + Interviewing Paul Taylor about his comedy projects, including “What the F*ck France” on Canal+ / Youtube and his stand-up shows #Franglais and The Paul Taylor Comedy Night. Video available. +
+ + + 433. British TV: Gordon Ramsay’s Kitchen Nightmares (Part 2) [Video] + + + Learn more authentic English directly from the mouths of these native speakers in an episode of the popular British TV show “Kitchen Nightmares” with famous chef Gordon Ramsay. Videos and vocabulary lists available below. +
+ + + 432. British TV: Gordon Ramsay’s Kitchen Nightmares (Part 1) [Video] + + + An introduction to one of the UK’s most famous chefs and a chance to learn some authentic English from a popular British TV show featuring Gordon Ramsay. Video available. Includes swearing. +
+ + + LEP on ZEP – My recent interview on Zdenek’s English Podcast + + + I was interviewed again by Zdenek Lukas on his podcast. We talked about teaching and podcasting, including some behind-the-scenes stories of LEP. Zdenek uses his particular set of skills to analyse 50 bits of grammar, vocabulary and pronunciation from the interview. +
+ + + 431. Restaurants & Hotels / Really Strange TripAdvisor Reviews (with Amber) + + + Talking to Amber about experiences in restaurants & hotels and some truly bizarre TripAdvisor reviews. +
+ + + 430. Discussing Language Learning & Life with Fred Eyangoh + + + Talking to Fred about history, geography, comedy, learning English and cutlery. +
+ + + 429. RAMBLENEWS! + + + An episode with some rambling about recent news, LEPster meetups, transcript project team, listener comments & questions, teaching phrasal verbs with ‘in on’ and some music. + + Video available. + +
+ + + 428. British Comedy: Limmy’s Show (Part 2) + + + Analysis of another sketch from Limmy’s Show. Listen to informal English spoken in a Glasgow accent, and understand it. +
+ + + 427. British Comedy: Limmy’s Show + + + An episode analysing some British comedy, this time focusing on a couple of sketches from Limmy’s Show, an award-winning TV comedy produced by BBC Scotland. +
+ + + 426. Thompson, Taylor & Minogue: Victorian Detectives (Part 2) with Amber & Paul + + + Listen to the conclusion of this mystery story in which Amber, Paul and I attempt to solve a series of kidnappings in Victorian London. +
+ + + 425. Thompson, Taylor & Minogue: Victorian Detectives (Part 1) with Amber & Paul + + + Listen to Amber, Paul and me as we attempt to solve a series of mysterious kidnappings in Victorian London. +
+ + + 424. With Andy & Ben from The London School of English (Part 2) + + + Talking to Andy Johnson and Ben Butler about teaching English to millennials, cross-cultural experiences we’ve had as English teachers and some funny stories about Andy. +
+ + + 423. With Andy & Ben from The London School of English (Part 1) + + + Talking to Andy Johnson and Ben Butler from The London School of English about many things including teaching English for specific purposes, and a couple of funny anecdotes. +
+ + + 422. Learning British Dialects with Korean Billy + + + Talking to Billy from Korea about his videos on British dialects and accents. +
+ + + 421. Skateboarding – A New Olympic Sport (with James) + + + A conversation with my brother about this new Olympic sport including the history, the different types, the vocabulary and some personal stories and memories about skateboarding from childhood into adulthood. +
+ + + 420. Anyone fancy a brew? Let’s have a nice cup of tea! + + + Everything you need to know about the culture of tea-drinking in the UK, including a full guide to how to make a nice cup of tea, English style. +
+ + + 419. Rogue One: A Star Wars Story – SPOILER RAMBLE with James + + + Talking to my brother about the latest Star Wars film, Rogue One: A Star Wars Story. SPOILER ALERT! +
+ + + 418. The Rick Thompson Report: Technology and The Future (January 2017) + + + Talking to my Dad about developments in technology in the future. +
+ + + 417. New Year’s Resolutions and Language Learning in 2017 + + + Talking about typical new year’s resolutions in the UK, my resolutions about learning French, and ideas in which you can improve your English this year. +
+ + + 416. What was the most popular episode of LEP in 2016? + more podcast statistics + + + An overview of how 2016 was for Luke’s English Podcast including some details about the top 5 episodes, the top 20 countries, and more statistics for the last 12 months. +
+ + + 415. With the Family (Part 3) More Encounters with Famous People + + + My mum, dad and brother tell us a few more anecdotes about their encounters with some well-known people. +
+ + + 414. With the Family (Part 2) My Uncle Met a Rock Star + + + Listen to my uncle Nic telling some stories about British rock stars he has met over the years, including an encounter with one of the most famous musicians in the world! +
+ + + 413. With The Family (Part 1) Mum’s Cooking + Vocabulary (with Uncle Nic) + + + A conversation with my family about how to cook a delicious Turkey dinner and some vocabulary teaching. +
+ + + 412. British Festivals and Holidays (Part 2) + + + An episode all about special days and celebrations in the British calendar. Cultural information and some pronunciation work. +
+ + + 411. British Festivals and Holidays (Part 1) + + +
+ + + A Quick Message About Donations + + – Please consider donating to “Doctors Without Borders” to help people in need + +
+ + + 410. Teaching 12 Idioms in the Street / On the Set of Paul’s TV Show (with Amber) + + + Amber & I teach you 12 idiomatic English phrases while attending the filming of an episode of Paul Taylor’s TV show on the street in Paris. +
+ + + 409. A CHRISTMAS MEGA-RAMBLE with AMBER MINOGUE + + + A rambling conversation with Amber about Christmas and more! +
+ + + 408. Catching Up With Amber & Paul #4 (+ videos) + + + Amber & Paul are back on the podcast and we do the usual catching-up session and go off on a few tangents about Amber’s play, Paul’s showbiz life, marshmallows, microphones, tea & coffee, accents and more. + + There are videos for the intro and outro of this episode. + +
+ + + 407. Reflections on Language Learning & Working as a Translator: Interview with Kristina from Russia, Winner of the LEP Anecdote Competition 2016 + + + In conversation with Kristina from Russia, the winner of the LEP anecdote competition 2016. Talking about working as a translator and interpreter, and her experiences of learning English and other languages. +
+ + + 406. Grammar (Past Continuous Tense) / UK Media Bias / Brazil Football Tragedy + + + A review of the differences between past continuous tense and past simple tense, comments on the UK media including the BBC and an overview of the newspapers, and some comments about the recent plane crash involving members of the Chapecoense football team from Brazil. +
+ + + 405. British Accents in The Lord of the Rings (Part 2) + + + A closer look at the different British accents you can hear in the Lord of the Rings movies. +
+ + + 404. British Accents in The Lord of the Rings (Part 1) + + + Explaining the different accents you can hear in the Lord of the Rings movies. +
+ + + 403. Competition Results / War Story / Grammar & Punctuation / My Dad’s Accent + + + The final results of the LEP Anecdote Competition and some comments & emails from listeners including a war story, some grammar & punctuation (noun phrases, possessives & apostrophes) and a question about my Dad’s accent. +
+ + + 402. The Rick Thompson Report: What’s Going On? Nov. 2016 (Post-Truth Politics, Cricket and Tetris) + + + Talking to my Dad about recent news, including a Brexit update, comments about post-truth politics and more. +
+ + + 401. ‘Switch off your editor’ to improve your fluency in English + + + Advice about how you can use this creativity boosting technique to push your fluency in English. +

+

+ + + 400. The Pink Gorilla Story 2 + + + Having fun in the 400th episode with another improvised comedy story. +
+ + + 399. The Return of Molly Martinez (with Dane Nightingale) + + + Talking with two American friends (including Molly from episodes 198 & 199) about TV journalism, how the Internet works, the US presidential election results, California’s new marijuana laws and puffins. +
+ + + 398. US Election Result Ramble + Message + Song + + + First impressions of the US Presidential Election, plus a message for my listeners and a song or two. +
+ + + 397. An 80-Minute Ramble + + + Talking spontaneously about winter and some Netflix recommendations. +
+ + + 396. The LEP Anecdote Competition – ROUND 2 + + + Listen to the 10 anecdotes that got through to round 2 of the competition and vote for your favourites. +
+ + + 395. “Have you ever…?” with Paul Taylor and Robert Hoehn + + + Talking about life experiences and telling stories with a couple of friends. +
+ + + 394. OPP: Other People’s Podcasts (Part 4) + + + Recommending some more of my favourite podcasts. You might like them too. +
+ + + 393. OPP: Other People’s Podcasts (Part 3) + + +
+ + + 392. What are the most essential skills of a good foreign language learner? + + + Exploring responses to this question on + + quora.com + + – including plenty of advice and insights into some good ways to improve your English learning. Also, a quick chat with English Robot 3000, who has been in a box for about 3 years. +
+ + + 391. Discussing Language, Culture & Comedy with Alexander van Walsum + + + A light-hearted chat with a comedian friend of mine who originally comes from The Netherlands but has also lived all over the world. We talk about cultural and linguistic differences in different countries, doing stand-up comedy and getting Darth Vader’s signature. +
+ + + 390. The Rick Thompson Report: Hard Brexit / U.S. Election + + + A conversation with my dad about recent news events. +
+ + + 389. US Presidential Election 2016 – Trump vs Clinton (with Sarah & Sebastian) Part 2 + + + A conversation with two American friends about Donald Trump and Hillary Clinton. +
+ + + 388. US Presidential Election 2016 – Trump vs Clinton (with Sarah & Sebastian) Part 1 + + +
+ + + 387. LEP Anecdote Competition Entries – Please listen & vote + + + News about the latest competition, results of the recent podcast survey and the top countries for LEP downloads. +
+ + + 386. Breaking the Intermediate Plateau (Part 2) + + + Is your learning slowing down? Finding it hard to make progress beyond an intermediate level? Listen to this episode to get lots of advice on breaking the intermediate plateau. +
+ + + 385. Breaking the Intermediate Plateau (Part 1) + + +
+ + + 384. Teaching Grammar & Social English + + + A review of some of language points I have been teaching recently including some grammar, some social English and quite a lot of silly improvisation and musical interludes. +
+ + + 383. More Ian Moore + + + The second part of my chat with British writer and comedian Ian Moore. +
+ + + Please take my survey / Anecdote Competition / ‘Russian Joke’ Video + + + A quick message asking listeners to take a survey about LEP, some comments about the anecdote competition and a video explaining the ‘Russian joke’. +
+ + + 382. Mod Culture with Ian Moore + + + Conversation with author and comedian Ian Moore about the British ‘mod’ subculture. +
+ + + 381. Discussing Cultural Differences with Amber & Paul + + + Comparing behaviour and communication styles in different cultures around the world. +
+ + + 380. Catching Up with Amber and Paul #3 + + + More spontaneous conversation with podcast friends Amber Minogue and Paul Taylor. +
+ + + 379. The LEP Anecdote Competition + + + Details of a new interactive competition for listeners. +
+ + + 378. Holiday in Thailand (Part 2) + + + Part 2 of this description of my recent holiday in Thailand. You’ll hear more stories and descriptions including learning how to cook Thai curry, a conversation with a monk, doing yoga every day, a couple of messages from listeners and some reflections on gratitude, forgiveness and guidance. +
+ + + 377. Holiday in Thailand (Part 1) + + + Stories and descriptions of my recent holiday in Thailand. You’ll hear some facts about Thailand, some descriptions of Bangkok and a few stories about funny experiences that happened while we were there. +
+ + + I’m going on holiday – no podcasts for a while + + + Just to let you know that there won’t be any podcasts for a while, and some more details including a little story. +
+ + + 376. A Game of Mini Golf and a Pint (with James) + + + Conversation with my brother on a sunny afternoon in an English park. We talk about playing mini golf, life in a town vs life in London, the London riots of 2011 and more. +
+ + + 375. The LEP Pub Quiz (with Alex Love) + + + Listen to Alex and me testing each other on our general knowledge, including a few language-related questions. +
+ + + 374. Alex’s Edinburgh Fringe Report + + + I talk to Alex about his successful Edinburgh show and we talk about aspects of culture including hen and stag parties, male strippers and The Smurfs. +
+ + + 373. Who Wants to Be Good at English? + + + Listen to an evil game show, created by my evil father, for evil purposes! Just kidding – this is a tricky word-quiz designed by my Dad to help his students of journalism realise how words are often used in the wrong way. It creates some discussion about the way the meanings of words evolve over time. Can you answer the questions correctly? +
+ + + 372. The Importance of Anecdotes in English / Narrative Tenses / Four Anecdotes + + + This episode has a bit of everything: useful tips for telling anecdotes, a review of narrative verb tenses, some authentic spoken anecdotes by members of my family and some vocabulary explanations. +
+ + + 371. In Conversation with Rob Ager from Liverpool (PART 2: Film Analysis / Hidden Meanings / Stanley Kubrick / Conspiracy Theory) + + + Rob Ager has built his own career as a film critic on YouTube. Now he sells his own documentaries about films on his website. This conversation explores the subjects of his film analysis, hidden messages in films, the work of Stanley Kubrick and a conspiracy theory about the moon landing. +
+ + + 370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis) + + + Rob Ager has built his own career as a film critic on YouTube. Now he sells his own documentaries about films on his website. This conversation explores the subjects of his home town of Liverpool and how he became interested in films. +
+ + + 369. Pokémon GO – It’s just a game, OR IS IT? + + + Talking about this global phenomenon, including a description of the game, the pros and cons, the issues of safety, personal data and what the future could look like with augmented reality. +
+ + + 368. The LEP Annual General Meeting 2016 / QUESTIONS + + + Dealing with a number of points, including a language point about time expressions such as ‘annual’ and ‘biannual’, LEP meet-ups, the transcript collaboration and a comment from a vampire. +
+ + + 367. Talking about Nothing with Alex Love (Invaded by Robot Aliens) PART 2 + + + The second half of my conversation with comedian Alex Love, including references to his Edinburgh Festival show, Dogma film-making and English teaching, and my chicken dinner. +
+ + + 366. Talking about Nothing with Alex Love (Invaded by Robot Aliens) + + + I talk to comedian Alex Love about his show at the Edinburgh Festival, and the Skype call gets invaded by robot aliens while we talk about portmanteau words and getting hungry and angry at the same time. +
+ + + Quick Hello / Notting Hill Carnival Audio + + + Just a quick episode to let you know that I’m still here and to play you the audio track to a video I made at the Notting Hill Carnival. +
+ + + 365. BREXIT: 3 Weeks Later (A conversation with my Dad) + + + An update on the situation in the UK since the EU referendum three weeks ago. Listen to my Dad give his comments and analysis. Some vocabulary is highlighted and written on the page. This is probably the last episode about politics for a while. +
+ + + 364. TEN TOP TIPS for Learning English + + + Some more motivation and advice for learning English effectively. +
+ + + 363. Muhammad Ali & The Rumble in the Jungle + + + A biography of Muhammad Ali and the story of one of the most dramatic and memorable fights of his career. Listen for specific descriptions of boxing techniques and comments about the historical significance of this extraordinary person. +
+ + + 362. Getting things off my chest! (Part 2) Brexit / Football + + + A two-hour rant about the Brexit situation and the Euro 2016 competition. +
+ + + 361. Getting things off my chest! (Part 1) Brexit / Football + + + A two-hour rant about the Brexit situation and the Euro 2016 competition. +
+ + + 360. THE DAY AFTER BREXIT (Thoughts and feelings) + + + Last night the UK voted to leave the EU. Here are my thoughts and feelings. +
+ + + 359. BREXIT JOKES / EU REFERENDUM NIGHT + + + The EU referendum is happening tonight, so I wanted to record some of my stand-up material that I’ve written about Brexit and make some predictions. +
+ + + 358. Fête de la Musique / World Music Festival in Paris + + + Join my wife and me as we walk around our local area in Paris during the annual music summer solstice music festival. You’ll hear commentary, interviews, live music and Luke singing Luther Vandross! +
+ + + 357. Learning Languages with Olly Richards + + + Another conversation with Olly, who is a polyglot from England. Olly speaks 8 languages and has lots of good advice for learning languages. In this conversation we talk about accents, pronunciation and other considerations in learning English. +
+ + + 356. News / Football / Brexit / Events in the UK / Jo Cox + + + Some more news and views about the EURO 2016 football, the EU referendum and recent tragic events involving Labour MP Jo Cox who was murdered in England this week. +
+ + + 355. EURO 2016 Football: Hooliganism & Violence in Marseille / England vs Russia + + + Discussing the European Football Championship which is happening in France, including some descriptions of the violence between English and Russian football hooligans and the match between England and Russia. +
+ + + 354. Would You Rather…? (with Amber, Paul & James Simpson) + + + I am joined by podcast friends Amber, Paul and James Simpson. You’ll hear the results of the interactive lying game from episode 343, then we play a speaking game which involves asking each other some ridiculous hypothetical questions, just for fun. +
+ + + 353. Award Ceremony / Paris Weather / Crazy Idea + + + Some news and general rambling about the ELTon awards, floods and lightning in Paris and a crazy idea about doing live podcast recordings in different locations around the world. +
+ + + 352. BREXIT: Key Vocabulary and Concepts + + + I explain and clarify some important vocabulary relating to the Brexit debate. +
+ + + 351. BREXIT: Should the UK leave the EU? (A Conversation with my Dad) + + + I talk to my Dad about the UK’s referendum on EU membership. We discuss some of the main issues and arguments and give our personal opinions. +
+ + + 350. Film Club: X-Men Apocalypse (Review) + + + An episode of Luke’s Film Club. This time I’m making fun of the new X-Men film. Listen for a film review, some comedy and some improvised comments about the X-Men. +
+ + + 349. Who’s the best superhero? (with Paul Langton) + + + My mate Paul used to collect comic books so he knows all about superheroes. I asked him to describe the main characters from the Marvel universe and then decide which one is the strongest. Watch out for descriptive vocabulary to describe personal qualities, abilities and weaknesses. +
+ + + 348. Film Club: Marvel / Captain America Civil War (Part 2) + + + Talking about Marvel comic book movies, superheroes and a review of a new Captain America film. +
+ + + 347. Film Club: Marvel / Captain America Civil War (Part 1) + + + Talking about Marvel comic book movies, superheroes and a review of a new Captain America film. +
+ + + 346. Rambling on a Friday Afternoon + + + Watch out for some more phrasal verbs and idioms as I share a few more anecdotes about New York, talk a bit about politics (US elections, Trump, Mayor of London, Brexit), mention Leicester City FC and rant about Google Adverts (deja vu?) +
+ + + 345. ELTon Award Nomination / Phrasal Verbs & Idioms / Brooklyn / The Revenant / Museum of Natural History & More + + + News about an award nomination for LEP, a movie review of The Revenant with Leonardo DiCaprio, a trip to Brooklyn, an adventure in the American Museum of Natural History and some phrasal verbs and idioms to look out for. +
+ + + 344. A Totally Terrific Talk on the Terrace with The Tangential Trio (feat. Tom Morton) with Amber & Paul + + + Another free-flowing conversation on the terrace with Amber & Paul. This time we’re joined by actor and voice-over artist Tom Morton. Topics of conversation include: The Queen’s birthday, the death of Princess Diana, what British people think of the monarchy, and more… +
+ + + 343. The Interactive Lying Game (with Amber & Paul) / Descriptive Adjectives with T / Three is a Magic Number + + + Amber, Paul and I play the lying game based on questions from listeners. I go through some descriptive adjectives beginning with T to help you come up with a superhero team name for the three of us, and there’s a song about the magic number 3. +
+ + + 342. Paul’s “La Bise” Video Success / Audition Story (with Amber & Paul) + + + Amber & Paul and I talk about Paul’s hit youtube video about French kissing habits, his newfound success as a stand-up (he’s the hottest kid in town), some online abuse he’s had and then an anecdote about an audition that we attended recently, which involved a surprising misunderstanding about accents. There’s also a brief language focus on using relative clauses with ‘which’ to extend your sentences when speaking. Enjoy! +
+ + + 341. Catching Up With Amber & Paul, Again + + + Listen to a natural conversation between native speakers of English. This episode features the return of podcast friends Amber & Paul as we sit on the terrace in the sunshine, catch up on news and respond to comments from listeners to the podcast. +
+ + + 340. LEP Photo Competition Results & Winners / It’s LEP’s 7th Birthday + + + Who won the photo competition from episodes 313 and 327? Also, let’s celebrate the 7th birthday of the podcast and create some nicknames for my listeners. :) +
+ + + 339. A Murder Mystery Detective Story (Part 2 of 2) + + + Here’s the conclusion of this two-part mystery story in English. Listen to the murder mystery story, analyse the evidence, solve the crime and learn English while doing it! +
+ + + 338. A Murder Mystery Detective Story (Part 1 of 2) + + + Join me as I play a text adventure game about a murder mystery. Listen as we discover the story together, make some choices based on evidence and try to piece together the solution to a murder. Test your listening skills and your deductive reasoning. (Link provided so you can play the text adventure too) +
+ + + I was interviewed by Olly Richards on his podcast, called “I Will Teach You a Language” and we talked about language learning + + + If you enjoyed episode 332 of LEP you should listen to this one too. It’s available on Olly’s website (links provided in this post). Olly asked me about what I’ve learned after teaching English for 15 years and podcasting for 7 years. Together we reflect on how attitude, time, practice and material are crucial in learning a language effectively. +
+ + + 337. MURDER MILE WALKS: Stories of London’s Most Infamous & Shocking Murders [Some Explicit Content + Swearing] + + + Conversation about swearing on TV, followed by some gruesome true stories about crimes from London’s history. Not for the faint-hearted! +
+ + + [VIDEO] + + + I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy + + + This is a video of the conversation I had with Craig Wealand and some of his listeners on Blab recently. We talk about comedy and humour. +
+ + + 336. Drinking Scottish Whisky at a German Business Meeting While Wearing a Kilt and Playing a Flute… and other stories (with Carrick Cameron) + + + A conversation with a friend about Scottish and English accents, kilts, scotch whisky and some funny stories about drinking experiences in different countries. +
+ + + 335. VOCABULARY REVIEW: Phrases & Expressions from Episode 334. + + + A chance to fully understand words and phrases you heard in episode 334. I clarify and explain lots of vocabulary, and have some fun with the examples. +
+ + + 334. Interview with Craig Wealand (from InglesPodcast) + + + A relaxing conversation with a fellow English teacher and podcaster who lives in Spain. +
+ + + My interview with school kids from IES School in San Fernando, Spain + + + I was invited onto a school radio show in Spain and was interviewed by a group of children. Listen to their questions and my answers. I think it’s quite sweet! +
+ + + 333. More Misheard Lyrics ♬ + + + Have fun listening to some more songs with ambiguous sounding lyrics. What are the singers of these songs really saying? +
+ + + 332. Olly Richards: English Polyglot – Top Advice and Strategies for Language Learning + + + An interview with a professional polyglot. Listen to hear some top tips for learning another language as an adult. Tons of motivation and inspiration for pushing your English even further. +
+ + + 331. How’s your English? (and why speaking is so important) + + + Instructions on how you can push your English to new levels with LEP, and some details about my new sponsor – italki, which is a really great service that you can use to arrange conversations with native English speakers online from the comfort of your own home, and why as a listener to this podcast, you should check it out. Full transcript available. +
+ + + 330. Let’s Play… Grand Theft Auto 5 (and learn some English while doing it) + + + A multitasking episode in which I play GTA5 and describe what’s happening, and talk about the history of Grand Theft Auto. +
+ + + 329. A Rambling Chat with James (News, Stories, Jokes) + + + My brother visited me in Paris and while he was here we recorded this conversation in which we talk about differences between London and Paris, doing stand up comedy for the first time, the EU referendum, the US presidential elections, Donald Trump, Hillary Clinton, Bernie Sanders, eagles vs drones, mosquitos and why women yawn more than men. Also, Jim tells his talking dog joke. +
+ + + 328. Cooking with Luke – Verbs and Expressions in the Kitchen + + + I teach you verbs and expressions for cooking while preparing a delicious chicken dinner in the kitchen – recipe available. :) +
+ + + 327. The LEP Photo Competition – Please check out the photos and vote + + + Learn some key vocabulary and grammar for describing photographs, and check out photos of people around the world listening to LEP in different situations. +
+ + + 326. Catching up with Oli / Future Predictions (Part 2) + + + A chat with my cousin Oli about the future and the arrival of his new baby daughter. What will the world be like for her in the next 10-20 years? What kind of father will Oliver be? +
+ + + 325. Catching Up with Oli / Future Predictions (Part 1) + + + A conversation with my cousin Oli. We talk about some difficult experiences he’s had over the past few years, and then look to the future. +
+ + + 324. David Bowie (Part 2) + + + Everything you need to know about British musician David Bowie. +
+ + + 323. David Bowie (Part 1) + + + Who was David Bowie and why was he such a significant artist? What did he mean to me personally, and how did I feel when he died this week? +
+ + + 322. With The Thompsons + + + Listen to to some warm conversation with my Mum, Dad and brother at Christmas time. +
+ + + 321. Star Wars Episode VII: The Force Awakens – SPOILER REVIEW + + + I’m joined by my brother and we have a very geeky conversation about the new Star Wars film, with all our fan theories and favourite moments. Warning: Spoilers! +
+ + + 320. A Christmas Carol by Charles Dickens + + + Listen to me read a version of this classic Christmas story. +
+ + + 319. Star Wars VII: The Force Awakens – Reaction (No spoilers!) + + + Join me as I walk to the cinema to see the new Star Wars film and then listen to my friends and I giving our reactions afterwards. No spoilers. +
+ + + 318. The Rematch (Part 2) with Amber & Paul + + + Listen to your favourite podcast guests play another speaking game and try to guess if we’re lying or telling the truth. +
+ + + 317. The Rematch (Part 1) With Amber & Paul + + + Will Paul finally win a game on this podcast? Listen to find out. +
+ + + 316. British Comedy: Tim Vine (Part 2) + + + More jokes from comedian Tim Vine, explained. +
+ + + 315. Do me a favour – Take my Business English Survey! + + +
+ + + 314. Luke’s Guided Sleep Meditation + + + Follow every word I say and I will help you to fall into a deep and relaxing sleep, if you can stop laughing. +
+ + + 313. British Comedy: Tim Vine + + + Understand a comedy routine by celebrated British comedian Tim Vine. Can you understand all his jokes? Let me help you. +
+ + + 312. The Words of the Year (Part 3) with Amber & Paul + + + Amber, Paul and I talk about some new words which were added to the Collins dictionary this year. +
+ + + 311. The Words of the Year (Part 2) with Amber & Paul + + + Learn some new language, and listen to some discussions and anecdotes related to these words. +
+ + + 310. The Words of the Year (Part 1) with Amber & Paul + + + In all 3 of these episodes I explain and clarify a lot of what we say in these funny conversations so that you can learn, laugh and understand everything. +
+ + + Attacks in Paris (with Paul Taylor) + + + Paul Taylor was just a few meters away from one of the shootings that took place in Paris this week. He tells me all that he saw and what happened. +
+ + + 309. The Lying Game (Part 2) With Amber & Paul + + + Here’s part 2 of this speaking game with Amber and Paul. Listen until the end to hear me explain how I use this game in my English classes (hello teachers). +
+ + + 308. The Lying Game (Part 1) With Amber & Paul + + + Amber, Paul and I play another speaking game. Can you guess if we’re lying or telling the truth? Listen carefully. +
+ + + 307. The Mystery of Corporate Jargon & Management Speak (Part 2) with Paul Taylor + + + I’m joined by Paul Taylor as we discuss specific words and phrases used in the world of business. +
+ + + 306. The Mystery of Corporate Jargon & Management Speak (Part 1) with Paul Taylor + + + Why do people use these phrases, and why do so many people hate language like this? And, what is + + bullsh*t bingo + + ? +
+ + + 305. Back To The Future (Part 2) + + + Talking about time travel and the complex paradoxes of the story of Back to the Future. +
+ + + 304. Back To The Future (Part 1) + + + It’s Back to the Future day, so this episode is all about one of my favourite films of all time. Let’s review the plot of this classic film. +
+ + + 303. The Battle of Britain + + + What happened over the skies of England during World War 2, and how were Polish fighter pilots involved in Britain’s survival against the nazis? +
+ + + 302. Bad Dentist / Star Wars / Adam Buxton / Headphone Jams / Jarvis Cocker + + + More news, stories and fun stuff for you to listen to. +
+ + + 301. David Cameron & The Pig / Bad Gig Story / Who is Ronnie Pickering? + + + Some news about the UK, some anecdotes and funny nonsense. +

+

+ + + 001PODCAST PIC HI RES1400 + + + 300. EPISODE 300 (PART 2) + + + Listen to messages from previous guests on LEP, some fun impressions of famous characters and more. +
+ + + 300. EPISODE 300 (PART 1) + + + I can’t believe I’ve done over 300 hours of Luke’s English Podcast! +
+ + + 299. The Bank Robbery (Part 2) (with Amber, Paul and Sebastian) + + + Listen to native speakers planning a bank robbery in this fun simulation. +
+ + + 298. The Bank Robbery (Part 1) (with Amber, Paul & Sebastian) + + + A speaking exercise with native speakers. How will Amber, Paul and Sebastian plan the perfect bank robbery? +
+ + + 297. Using Humour in the IELTS Speaking Test (With Jessica from All Ears English) + + + Some very useful advice for the IELTS speaking test with Jessica from AEE podcast. Give your speaking some personality and humour. +
+ + + 296. Learning Comedy is like Learning a Language (with Paul Taylor) + + + A conversation with Paul Taylor about his experiences at the Edinburgh fringe festival, and how learning to do comedy is similar to learning to speak a foreign language. +
+ + + 295. California Road Trip (Final Part) + + +
+ + + 294. California Road Trip (Part 7) + + +
+ + + 293. California Road Trip (Part 6) + + featuring an interview with AJ Hoge from Effortless English. + +
+ + + 292. California Road Trip (Part 5) + + +
+ + + 291. California Road Trip (Part 4) + + +
+ + + 290. California Road Trip (Part 3) + + +
+ + + 289. California Road Trip (Part 2) + + +
+ + + 288. California Road Trip (Part 1) + + + A journey through California, with history, stories, American & British English, analysis of song lyrics, book recommendations and more! +
+ + + 287. VOCAB BATTLE!!! WITH AMBER & PAUL (exciting title) + + + Fun and games with Amber, Paul and some natural English expressions. +
+ + + 286. The Wedding Episode + + + My listeners wanted me to talk about it, so I have – this episode is a description of my wedding day. <3 +
+ + + 285. Ten More Fixed Expressions (with Paul Taylor) + + + A funny episode in which I test Paul Taylor on his knowledge of vocabulary, and we teach you some more expressions. +
+ + + An Experimental Live Video Podcast on Periscope + + + Have a look at this video of me on Periscope. +
+ + + 284. Questions from Tea4er.ru (Part 2) + + + Some more questions from Russian teachers and students. +
+ + + 283. Ten Fixed Expressions (with Paul Taylor) + + + A fun game in which I test Paul Taylor’s vocabulary and we teach 10 natural expressions. +
+ + + 282. Questions from Tea4er.ru + + + Some questions from Russia on a variety of topics. +
+ + + 281. Misheard Lyrics + + + A funny episode in which we listen to some song lyrics and try to understand exactly what the singers really mean. +
+ + + 280. The UK’s Favourite Superstitions + + + An episode about the most common superstitions for people in the UK. +
+ + + 279. Marcus Keeley / Northern Ireland / Accent (Part 3) + + + An interview with comedian Marcus Keeley about accents that you can hear in Northern Ireland – learn what a Belfast accent sounds like. +
+ + + 278. Marcus Keeley / Northern Ireland (Part 2) + + + Talking about life in Northern Ireland, the part of the UK that foreign people don’t often visit. +
+ + + 277. A Chat with Marcus Keeley from Northern Ireland (Part 1) + + + A conversation with comedian Marcus, who comes from Northern Ireland. +
+ + + Survey: What kind of episodes of LEP do you prefer? + + +
+ + + 276. Q&A Session #5 + + + More questions about English from LEPsters, answered by Luke. +
+ + + 275. The Phrasal Verb Chronicles #2 + + + Another improvised story, featuring another 50 phrasal verbs that I’ve taught in episodes of + + A Phrasal Verb a Day + + (my other podcast) +
+ + + 274. Q&A Session #4 + + + I answer more questions from LEPsters. +
+ + + 273. The Bad Haircut Situation Part 2: More Role Plays & Improvisations (with Amber & Paul) + + + Amber, Paul and I do some improvised comedy and demonstrate ways of dealing with awkward situations in English. +
+ + + 272. The Bad Haircut Situation (with Amber & Paul) + + + How should you give compliments, accept compliments and give bad news politely in English? Listen to this funny discussion to hear what Amber, Paul and I think. +
+ + + 271. Catching Up with Amber & Paul + + + A really funny and friendly conversation with my friends Amber and Paul on a very hot and sunny day in April. +
+ + + 270. UK General Election RESULTS + + + What happened? Who won? What does the results mean? +
+ + + 269. UK General Election 2015 (Part 2) + + + Who is going to win the next election, and how will that affect the UK? +
+ + + 268. UK General Election 2015 (Part 1) + + + Everything you need to know about UK politics and this big moment for the UK. +
+ + + 267. Earthquake in Nepal + other news + + + Please consider helping the victims of the earthquake. +
+ + + Luke’s TV Appearance on France24 + + + I was on TV talking about the UK’s general election. It was a bit awkward. +
+ + + 266. Telling Jokes in English (Part 3) + + + Understand the psychology of jokes, and listen to some more jokes and their explanations. +
+ + + 265. Telling Jokes in English (Part 2) + + + What are some typical joke structures? What makes a joke funny? Listen to lots of jokes, and understand their meanings. +
+ + + 264. Telling Jokes in English (Part 1) + + + What are jokes? How do we tell jokes in English? How do you respond to jokes? +
+ + + 263. Past, Present & Future + + + A chance to really understand the tenses in English, with lots of context. +
+ + + Luke’s Interview on InglesPodcast + + + I was invited by Craig onto his podcast – you can listen to it here :) +
+ + + A Message from Luke + + + Just a little letter from me to you. +
+ + + 262. What is Britishness? (Part 2) + + + Exploring notions of British identity – how do British people define their own identity? +
+ + + 261. What is Britishness? (Part 1) + + + Exploring notions of British identity – how do people view the UK from the outside? +
+ + + 260. Kingsman: The Secret Service + + + This is a review of an action movie set in the UK. +
+ + + 259. Eulogy for Dennis + + + My grandfather Dennis died, and this is my tribute to him and his life. +
+ + + 258. Award Win / Thank You / Poem + + + I won another competition (thanks to your votes) and so I wrote a poem to express my gratitude. +
+ + + 257. Be Positive + + + A rambling episode about why it’s important to think that the cup is half full. +
+ + + 256. Reading Books in English (and listening to them too) + + + How reading books, or listening to audiobooks can really help your English. +
+ + + 255. Taken 3 / Expressions with ‘Take’ + + + I saw the latest Taken film, and this is what I thought! Also, learn some vocabulary with the word ‘take’. +
+ + + 254. IELTS Tips & Tricks + + + Lots of advice for people who are taking the IELTS test. +
+ + + 253. Rapping with Fluency MC! + + + An interview with Jason Levine – the English teacher who uses hip-hop to teach English. I ask Jason about his teaching methods Jason does some rapping, live on the podcast. And you’ll hear me rapping on the podcast too. WORD. +
+ + + 252. Marooned With My Music: James Thompson + + + An interview with my brother about his life and his favourite music. +
+ + + 251. Welcome to LEP / 16 Things You Should Know about LEP + + + An introduction for new listeners to this podcast. +
+ + + 250. Marooned With My Music: Gill Thompson + + + An interview with my Mum about her life and her favourite music. +
+ + + 249. News / LEP Merchandise / Messages + + + Some news about LEP, and how you can buy merchandise with the LEP logo. +
+ + + 248. Marooned With My Music: Rick Thompson + + + An interview with my Dad about his life and his favourite music. +
+ + + 247. Understanding The USA + + + An in-depth and humourous discussion about the USA with Sebastian Marx. The aim of the episode: understand American values in more depth. +
+ + + 246. Flight Stories + + + Let’s listen to some funny stories about travelling by plane, and understand why the stories are funny. +
+ + + *Video – One of Luke’s Stand-up Comedy Gigs + + + A video of me performing stand up comedy. +
+ + + 245. Merry Christmas! (+more) + Video + + + A rambling episode with video about Christmas and other things :) +
+ + + 244. Urban Myths + + + What are some common urban myths and strange beliefs, and are they true or false? +
+ + + 243. A Life-Changing Teaching Experience in Ghana + + + An interview with my friend Mike Bruce who recently was part of an amazing training mission in a remote part of Ghana. +
+ + + 242. 11 Idioms Only Brits Understand (really?) + + + What does this article about British English really say about British people? (And do we really say these things?) +
+ + + 241. Star Wars + + + Everything about the films I have loved since I was a child. +
+ + + 240. Politicians Avoiding Questions + + + Let’s listen to the way politicians avoid difficult questions in interviews. +
+ + + 239. Prepositions: Verb Collocations + + + More detailed information about prepositions in English, focusing on collocations with verbs, and then an improvised story featuring lots of ‘verb + preposition’ collocations. +
+ + + 238. Prepositions (Part 1) + + + An introduction to prepositions in English. +
+ + + 237. OPP: Other People’s Podcasts (Part 2) + + +
+ + + 236. OPP: Other People’s Podcasts (Part 1) + + + I recommend some of my favourite podcasts. +
+ + + *My Appearance on the Talk2Learn Chatcast + + + I took part in a discussion on the chatcast. +
+ + + 235. British Slang (N to Z) + + + Learn some slang, rude words and aspects of British culture. +
+ + + 234. Making “Choons” with My Brother + + + Talking to my brother about how he makes music. +
+ + + 233. YEP! Winner + + + A conversation with Edgar from Mexico, who won my recent podcast competition. +
+ + + 232. YEP! Runners Up (Part 2) + + +
+ + + 231. YEP! Runners Up (Part 1) + + + Some chat by Skype with podcast listeners from around the world. +
+ + + 230. Can You Learn a Language in 6 Months? + + + We analyse and discuss a TEDx talk by Chris Lonsdale and evaluate the question – is it really possible to learn a language in just 6 months? +
+ + + 229. Zombies! (Part 2) + + + Listen to me take a zombie survival test, with a language focus on conditional sentences. +
+ + + 228. Zombies! (Part 1) + + + A halloween special about zombies in popular culture. Why are there so many zombie movies and TV shows? What is the significance of zombies in our culture? +
+ + + 227. Sausages, Barcodes & Apple Watches + + + A ramble challenge – can I keep talking, with no preparation, for 30 minutes without pausing or repeating myself? +
+ + + *My Video Interview with Gabby Wallace from “Go Natural English” + + + Gabby interviewed me for her YouTube project. +
+ + + 226. On a Boat + + + Listen to a funny conversation with my comedian friends Alex, Moz and Paul while drinking beer on a longboat in North London. Learn some swear words and euphemisms! (Some rude content) +
+ + + 225. Film Club: “Taken” + + + What do I think of the film Taken, starring Liam Neeson (clue: I can’t take it seriously) +
+ + + 224. Pronunciation: Verb Tenses & Connected Speech + + + Learn how native speakers really pronounce sentences in different tenses. +
+ + + *Please Consider Donating to Lepra.org.uk + + + A recommended charity. +
+ + + 223. YEP! Competition Winners + + + Who won the YEP competition? +
+ + + 222. Luke’s Late Night Podcast + + + Join me as I do a live DJ set while talking about the music I’m playing. +
+ * + + + Video: Playing Around with Accents in English + + + A video of me copying various accents in English. +
+ + + 221. A Cup of Tea with Corneliu Dragomirescu (Part 2) + + +
+ + + 220. A Cup of Tea with Corneliu Dragomirescu + + + An interview with film-maker Corneliu about learning English, growing up in Romania and his love of movies. +
+ + + 219. Scottish Independence + + + Everything you need to know about the Scottish independence movement, some Scottish accents and arguments for & against Scotland leaving the UK. +
+ + + 218. YEP! Competition Entries #8 + + +
+ + + 217. YEP! Competition Entries #7 + + +
+ + + 216. YEP! Competition Entries #6 + + +
+ + + 215. YEP! Competition Entries #5 + + +
+ + + 214. YEP! Competition Entries #4 + + +
+ + + 213. YEP! Competition Entries #3 + + +
+ + + 212. YEP! Competition Entries #2 + + +
+ + + 211. YEP! Competition Entries #1 + + + Listen to listeners of the podcast and vote for your favourite message! (voting now closed) +
+ + + 210. A Cup of Tea with Noman Hosni + + + An interview with the very funny Swiss/Iraqi comedian Noman Hosni who shares his hilarious experiences of learning English and travelling to London to perform comedy. +
+ + + 209. Travelling in Indonesia (Part 2) + + +
+ + + 208. Travelling in Indonesia (Part 1) + + + A full account of my adventure in Indonesia with my girlfriend. +
+ + + 207. Competition Inspiration + + + Some ideas for my listeners. +
+ + + 206. Summer in London (Part 2) + + + Let’s visit some of my favourite areas in central London, and discover some funny little details that you might not notice if you’re a tourist. +
+ + + 205. Summer in London (Part 1) + + + Join me as I walk around the streets of central London on a hot summer day in August. +
+ + + 204. Quick Hello: Competition Update & More News + + +
+ + + 203. The Flatmate from Japan + + + An interview with my old flatmate from Japan, Peter from Manchester. What’s it like for a British ex-Pat living in Japan? +
+ + + 202. British Comedy: Monty Python & The Holy Grail + + + One of the UK’s favourite comedy films, explained. Learn about politics, British mythology, monarchy and anarchy all at the same time! +
+ + * + + My Interview on Zdeněk’s English Podcast + + + I was interviewed by superfan and podcaster Zdenek on his podcast. +
+ + + 201. Nikolay Kulikov: A Russian Comedian in London + + + An interview with a Russian stand up comedian who travelled to the UK and Ireland to perform stand up comedy. What does he have to say about learning English, Russian stereotypes and real life in the UK? +

+

+ + + 200. New Competition: “Your English Podcast” + + + Announcing a new competition for listeners to this podcast. +
+ + + 199. The UK/USA Quiz + + + Molly and I test each other on our general knowledge of the USA and the UK – do you know the answers to our questions? +
+ + + 198. A Cup of Tea with Molly Martinez + + + A fun conversation with comedian and writer Molly Martinez from the USA. +
+ + + 197. World Cup 2014 (Part 6: Final Comments) + + +
+ + + 196. Cycling from Coast to Coast + + + Another interview with Ben Fisher from Lincolnshire, who this time has cycled the whole length of France. What happened during his adventure? Listen to find out. +
+ + + 195. British Comedy: Monty Python’s Flying Circus + + + A more detailed introduction to Britain’s favourite comedy group, and an explanation of the classic Dead Parrot Sketch. +
+ + + 194. World Cup 2014 (Part 5: More Forum Comments) + + + Comments from listeners about the world cup. +
+ + + 193. Culture Shock: Life in London (Pt.2) + + + Dealing with common problems experienced by foreigners visiting London. +
+ + + 192. Culture Shock: Life in London (Pt.1) + + + Explaining some strange aspects of life in London. +
+ + + 191. Culture Shock: The 4 Stages + + + How does it feel to have culture shock? How can you deal with the experiences of living in another country? +
+ + + 190. World Cup 2014 (Part 4: Dad’s Memories of 1966) + + +
+ + + 189. World Cup 2014 (Part 3: Your Comments) + + +
+ + + 188. World Cup 2014 (Part 2: England & The Dark Side of the World Cup) + + +
+ + + 187. World Cup 2014 (Part 1: The Basic Guide) + + + A special series about the World Cup. +
+ + + 186. Understanding Culture Shock with Lindsay & Gabby + + + I’m joined by Lindsay and Gabby from All Ears English and we talk about culture shock experiences. +
+ + + 185. The Trip to New York + + + A full account of my short holiday in the Big Apple. +
+ + * + + Welcome to the New Website – teacherluke.co.uk + + + I’ve got a new website :) +
+ + + 184. Luke’s D-Day Diary (Part 2) + + +
+ + + 183. Luke’s D-Day Diary + + + Join me as I travel to Normandy in northern France to take part in the D-Day commemoration and meet Eddie Izzard. +
+ + + 182. Learning English with Yacine Belhousse + + + A chat with the hilarious French comedian Yacine Belhousse about learning English and performing stand up comedy in another language. +
+ + * + + My Interview on the All Ears English Podcast – Talking about humour, comedy and how to tell jokes in English + + + I was featured on the All Ears English podcast with Gabby and Lindsay, talking about telling jokes and being funny. You can listen to it here. +
+ + + 181. Vocabulary & Expressions from Episode 180 + + + Lots of vocabulary and other explanations of language you heard in episode 180. +
+ + + 180. How my Brother Dislocated his Shoulder (with James) + + + A conversation with my brother James about how he dislocated his shoulder in a skateboarding accident. +
+ + + 179. The Ramblings of an Exhausted Teacher + + + I’m exhausted after a sleepless night and countless hours of exam marking – what has happened to my mind? +
+ + + 178. I’m Still Here + + + A rambling episode in which I give you some recent news and talk about various things. +
+ + * + + A Letter to My Listeners + + +
+ + + 177. What Londoners Say vs What They Mean + + + Here are some of the typical things that Londoners say, and explanations of what they really mean. +
+ + + 176. Grammar: Verb Tense Review + + + A complete review of all the main verb tenses (past, present and future) in English. +
+ + + 175. The Phrasal Verb Chronicles #1 + + + An improvised story featuring 50 phrasal verbs that I’ve taught in my other podcast + + “A Phrasal Verb a Day” + + . +
+ + + 174. How to Learn English with Luke’s English Podcast + + + Some top tips for using this podcast to improve your English, and a tour of my apartment. +
+ + + 173. The Curse of The Lambton Worm + + + A fantasy story from English folklore, improvised on the podcast. +
+ + + 172. British Comedy: Peter Cook & Dudley Moore + + + An introduction to British comedy legends Pete & Dud. +
+ + + 171. A Cup of Tea with Daniel Burt (Part 2) + + + More conversation with Daniel about Australia, Australian accents and typical Australian English. +
+ + + 170. Basking in My Moment of Glory + + + LEP won another competition! +
+ + + 169. A Cup of Tea with Daniel Burt (Part 1) + + + An interview with a comedy writer from Australia. +
+ + + 168. Please Vote! (and stuff like that) + + + Asking you to vote for me in another competition. +
+ + + 167. Memory, Mnemonics & Learning English + + + Techniques for improving your memory for effective language learning. +
+ + + 166. The Prawn Story + + + A funny improvised story about a prawn who gets lost in the ocean. +
+ + + 165. English Premier League Football + + + A chat with my mate James Simpson about English football. +
+ + + 164. Transcript Collaboration + + + How writing transcripts for L.E.P. is good for everyone! +
+ + + 163. Skype Chat with My Brother + + + I talk to James over Skype about some of his favourite British films. +
+ + + 162. Having Babies: Vocabulary / A Male Perspective + + + Vocabulary for talking about babies and childbirth, and some comments from the male point of view. +
+ + + 161. She’s Having a Baby + + + An interview with Amber Minogue, pregnant with her first child, about pregnancy and childbirth. +
+ + + 160. The A to Z of Christmas + + + I’m joined by Raphael from Liverpool as we chat about everything you need to know about Christmas in the UK. +
+ + + 158 & 159. A Cup of Christmas Tea with… Paul Taylor + + + The first time Paul Taylor has been on the podcast. Paul’s a comedian who works for Apple. We get to know Paul and talk about typical Christmas in the UK. Paul and I copy different accents in English. +
+ + + 157. A Cup of Coffee with… Sarah Donnelly (Part 2) + + + Sarah answers listeners’ questions from Facebook. +
+ + + 156. British Comedy: Ali G + + + An introduction to the hilarious British comedy character Ali G. +
+ + + 155. A Cup of Coffee with… Sarah Donnelly + + + An interview with American comedian and language teacher Sarah Donnelly. +
+ + + 154. British Slang (H to M) + + + Learn some more British slang phrases, and find out more about the real UK. +
+ + + 153. The Talking Dog Story + + + Another funny improvised story, this time about a talking dog. +
+ + * + + Doctor Who Episode – Language Analysis + + + A guest blog post with language analysis of an old episode of LEP. All done by top English teacher Richard Gallen. +
+ + + 152. I’m leaving Podomatic… and moving to Audioboo.fm + + + The podcast now has a new audio host. How can you find it? And how will this affect the podcast? (It should make it better) +
+ + + 151. Google Questions + + + I try to answer some of strange questions that people have typed into the Google search engine. +
+ + + 150. British Slang (D to G) + + + Learn some British slang phrases, and learn more about the real UK. +
+ + + 149. Backing Up Into The Cloud + + + A ramble about everything and nothing, and using hot-air balloons to save your data in the sky (or not) +
+ + + 148. British Slang (A to C) + + + Learn some British slang phrases, and learn more about the real UK. +
+ + + 147. Idioms and Expressions from Episodes 145 & 146 + + + Lots of idiomatic language and other vocabulary from the previous two episodes, explained and clarified. +
+ + + 146. Nightmare Teaching Experiences (Part 2) + + +
+ + + 145. Nightmare Teaching Experiences (Part 1) + + + Some stories about difficult teaching experiences, and what I learned from them. +
+ + + 144. The Chaos of English Pronunciation + + + The poem which almost nobody can read because it contains all the most difficult-to-pronounce words in the English language. I (try to) read it. +
+ + + 143. A Cup of Tea with… Robert Hoehn + + + A (slightly controversial) conversation with my American friend Robert from Minnesota! +
+ + + 142. The Annual General Meeting (Part 2) + + +
+ + + 141. The Annual General Meeting (Part 1) + + + A (simulated) meeting with stakeholders in LEP. Discussion and funny rambling on different topics. +
+ + + 140. Ghost Stories + + + Some strange, scary and mysterious personal accounts of ghosts and the unexplained. +
+ + + 139. Hard Driving + + + Vocabulary about cars and driving, all taught while driving a Mini through Paris. +
+ + + 138. Discussing Movies (Part 2) + + +
+ + + 137. Discussing Movies (Part 1) + + + Discussion about movies with a film studies student called Henry, with vocabulary for discussing films. +
+ + + 136. Cycling from London to Paris + + + An interview with Ben Fisher – a cyclist and his story of cycling through England and France. +
+ + + 135. Raining Animals + + + “It’s raining cats and dogs” – Do Brits usually say this? Vocabulary for talking about heavy rain, and discussion on the phenomenon of animals falling from the sky. +
+ + + 134. The Story of Salvo + + + An interview with some friends about the rise and fall of our punk rock band. +
+ + * + + Old Comments Box Archive + + + Read comments from listeners from my old website on Podomatic +
+ + + 133. Hip-Hop Lyric Analysis + + + Talking about hip-hop music and discussing the lyrics to the track “My Mind’s Playing Tricks On Me” by Geto Boys. +
+ + + 132. Pronouncing ~ed Endings (with Added Romance and Horror) + + + How to pronounce -ed Endings in English, and a funny romantic story (with a bit of horror too). +
+ + + 131. Rickipedia + + + My Dad, Rick, answers questions from listeners on Facebook. +
+ + + 130. A Cup of Tea with… Sebastian Marx + + + An interview with American comedian Sebastian Marx, about learning French and what it’s like to be an American in Europe. +
+ + + 129. A Cup of Tea with… Pierre Gaspard + + + An interview with a French friend about how he learned English so well. +
+ + + 128. Luke’s Stand-Up Comedy Show + + + Listen to me doing 25 minutes of stand up comedy on stage in Paris. +
+ + * + + Mini Podcast – Feeling Nervous + + + Just some vocabulary about feeling nervous. +
+ + + 127. Computer Games + + + My personal history of computer games, from the earliest games like Pong and Space Invaders, to modern classics like Zelda and GTA5. +
+ + + 126. Your Emails, Comments and Questions + + + I answer more questions from listeners about English and other things. +
+ + + 125. The Pink Gorilla Story + + + A funny story about a pink gorilla, completely improvised! +
+ + * + + Another Award-Winning Year! + + + I won another award for Luke’s English Podcast! +
+ + + 124. James Bond + + + Discussing the cultural phenomenon of OO7, with some vocabulary. +
+ + * + + Thanks for Voting / Downloading Problems + + +
+ + + 123. What’s Been Going On? + + + Some descriptions of recent news events. +
+ + * + + Competition Time Again! + + +
+ + + 122. The End of the World? + + + Debunking some of the conspiracy theories about the end of the world. +
+ + + 121: Americanisms (Part 2) + + +
+ + + 120. Americanisms + + + Why do Brits have a problem with the way Americans use English? +
+ + + 119. First Impressions of Life in Paris + + + Some descriptions of what life is like for an Englishman in Paris (that’s me) +
+ + + 118. Sick in Japan + + + The true story of how I ended up sick in a hospital bed in Japan. +
+ + + 117. Psychics / Cold Reading / Barnum Statements + + + Some sceptical discussion of mind reading and psychics, with some interviews. +
+ + + 116. Could it be you…? + + + Does the profile I’m reading in this episode sound like your personality? +
+ + + 115. A Chat About Music + + + James and I drink some beer and interview each other about our musical memories. +
+ + + 114. Twelve Natural Expressions + + + Some fun conversation and vocabulary teaching. +
+ + + 113. Setting The World To Rights + + + A deep discussion in a pub with my colleague Eamon. +
+ + + 112. Vocabulary Review – Episodes 1-11 + + + A chance to review some of the vocabulary from the first 11 episodes of this podcast. +
+ + * + + 111. Thanks for your comments + + + And another one :) +
+ + * + + 110. A Letter from Luke + + + Another note from me to you. +
+ + + 109. Friday Night Banter (aka The Slightly Drunk Episode) + + + Slightly drunken nonsense and fun with my comedy mates Alex, Paul and Moz. +
+ + * + + London Olympics 2012 (Video) + + + Interviews with Londoners at the 2012 Olympic Games. +
+ + + 108. In Bed with Luke + + + Just a news update about what’s been going on recently with my kitchen and my move to France, recorded ‘on’ a bed (not ‘in’ one, actually) +
+ + + 107. Messing Around with Accents and Voices + + + Kate and I have fun copying lots of different accents and discussing accents and voices in general. +
+ + + 106. Brighton Fringe Festival #3 + + +
+ + + 105. Brighton Fringe Festival #2 + + +
+ + + 104. Brighton Fringe Festival #1 + + + A funny series of episodes with comedians Alex Love, Paul Langton and Moz, recorded at the Brighton Fringe Festival. +
+ + + 103. The Queen and The Royal Family + + + I answer lots of common questions about The Queen and the recent diamond jubilee. +
+ + + 102. Competition Winners + + + Who won the LEP competition? +
+ + * + + 101. A Note from Luke + + + A letter from me, with some recent news. +

+

+ + + 100. Going To The Pub + + + Everything you need to know about going to the pub in the UK! With James. +
+ + + 99. The Rotary Sushi Bar of English + + + Another ramble challenge! This one features lots of thoughts about food from around the world. +
+ + + 98. Luke vs Oliver (Part 2) + + +
+ + + 97. Luke vs Oliver (Part 1) + + + Comparing, contrasting and discussing many different things, with Oliver. +
+ + + 94 – 96. Competition Entries + + + Listen to competition entries from some listeners around the world. +
+ + + 93. Weird… or just different? + + + A discussion with James and Aaron about cultural differences around the world. +
+ + + 92. UK Royal Family Opinions – Video (Part 2) [TRANSCRIPT] + + +
+ + * + + Competition Update + + +
+ + + 91. The A to Z of Random Thoughts + + + A funny ramble about many different things with topics from A to Z. +
+ + + 90. Competition + Phrasal Verbs A, B + C + + + Details of a competition and some phrasal verbs. +
+ + + 89. A Day In The Life + + + A description of my typical daily routine, in immense detail. +
+ + + 88. How To Play The Drums + + + Learn the rudiments of playing the drums like a rock star, in English. +
+ + + 87. 6 Idioms and 6 Phrasal Verbs + + + Oli and I teach you some vocabulary. +
+ + + 86. Criminal Law + + + A discussion with my cousin Oli about a complex and mysterious criminal case. +
+ + + 85. A Stand-up Comedy Gig + + + Listen to me talk about how it feels to perform stand up comedy. +
+ + + 84. Luke’s English Braincast + + + A discussion with my brother about recent news stories. +
+ + + 83. How to Swear in British English – VERY RUDE CONTENT + + + The complete guide to all the rudest words in British English! +
+ + + 82. Voting / Elections / Politics / Government + + + Vocabulary and information about the political system in the UK, and a comedy sketch. +
+ + + 81. What Makes a Great Teacher? + + + A guest-post and audio episode about good teachers. +
+ + + 80. Essential Social English + + + Some of the most important things you need to know in every day situations in English. +
+ + + 79. Family Arguments and Debates + + + Listen to my family playing speaking games and discussing various topics. +
+ + + 78. Christmas – It’s all about Family + + + A funny conversation with my brother about Christmas and lots of other things. +
+ + + 77. Bear vs Shark + + + Some speculation about an imaginary fight between two evenly matched opponents, and a stand up routine. +
+ + * + + VOTE FOR LUKE’S ENGLISH PODCAST + + +
+ + + 76. Mind The Gap – How to use the London Underground + + + The real Londoner’s guide to everything you need to know about using the tube. +
+ + + 75. Not a Distraction! + + + Rambling on about various things, including the benefits of listening to LEP. +
+ + + 74. UK Royal Family Opinions – English Interviews in London + + + Interviews with native speakers in London about the royal family. +
+ + + 73. Steve Jobs + + + All about Steve Jobs, recorded the day after he died. Why was Steve Jobs such a success? +
+ + + 72. The Cheese Episode + + + Another ramble challenge for fun! +
+ + + 71. The Ice Cream Episode + + + A ‘ramble challenge’ in which I have to keep talking (rambling) for as long as possible without any preparation. +
+ + + 70. Language and Music + + + An interview with Francis – guitarist and language teacher – about the connections between learning music and learning a language. +
+ + + 69. Common Errors / Typical Mistakes + + + Some of the most common errors I’ve ever heard as a language teacher, and their corrections. +
+ + + 68. Childhood / Growing Up / School Days – Phrasal Verbs and Expressions + + + Talking about childhood experiences, with a language focus on phrasal verbs and other vocabulary. +
+ + + 67. Cockney / London Accent + + + Listen to an interview with a cockney actor and learn about his accent. +
+ + + 66. Top Advice for Learning English / Idioms with ‘say’ / Culture Shock + + + Some advice for learning English, some more idiomatic expressions and some comments about culture shock. +
+ + + 65. London Video Interviews Pt 5 + + +
+ + + 64. London Video Interviews Part 5 (Video) + + +
+ + + 63. German and British Cultural Identity – Paco Erhard interview part 2 + + + More conversation with Paco about Germany and Britain, and cultural stereotypes. +
+ + + 62. Learning English – Advice from a German comedian living in London + + + An interview with Paco Erhard a German stand up comedian who speaks really good English. +
+ + + 61. 127 Hours / ‘Hand’ Idioms + + + All about the movie directed by Danny Boyle, the true story of the film and idioms with the word ‘hand’. +
+ + + 60. The King’s Speech / ‘Mouth’ Idioms + + + All about the Oscar winning movie with Colin Firth about King George VI, an interview with a stammerer, and some idioms related to the word ‘mouth’. +
+ + + 59. Billy Connolly Interview / More Scottish Accent + + + Listen to an interview with Glaswegian comedian Billy Connolly and consider his accent. +
+ + + 58. Scotland / Scottish Accent + + + An interview with Leslie about Scotland and the way Scottish people speak English. +
+ + + 57. Birmingham Accent / 12 Phrasal Verbs with the letter ‘A’ + + + An interview with my friend Neil, comments about the Birmingham accent and some phrasal verbs. +
+ + + 56. British Accents and Dialects + + + Lots of information about the different accents you can hear in the UK. Listen to me copy accents from around the country. +
+ + + 55. Mini Podcasts Collection 1 + + + A selection of short recordings about budget cuts, a haircut, Banksy and how to make a good cup of tea in the UK. +
+ + + 54. Halloween / Guy Fawkes Night + + + Cultural information about 31 October and 5 November in the UK. +
+ + + 53. Discussing Grammar with My Brother + + + How much does my brother know about grammar? The answer – not as much as you do. +
+ + + 52. London Video Interviews Part 4 + + +
+ + + 51. Luke Answers Your Emails and Questions + + + Answers on a range of different topics and language areas. +
+ + + 50. Good Things Come To Those Who Wait + + + Vocabulary and expressions related to being patient +
+ + + 49. Stand Up Comedy + + + An introduction to stand up comedy. +
+ + + 48. Useful Expressions for Travelling + + + How to talk about your travelling experiences when you’re on holiday. +
+ + + 47. Travelling in Vietnam + + + Descriptions of my holiday in Vietnam. +
+ + + 46. I’m on Holiday! I’ll be back in a couple of weeks + + +
+ + + 45. Luke & Andy’s Crime Stories + + + A funny conversation with my friend Andy in which we share some anecdotes about low-level crime. +
+ + + 44. Telling Anecdotes + + + How to tell anecdotes and personal stories in English. Listen to authentic English and learn some key language. +
+ + + 43. Notting Hill Carnival Video Frustration (Out-takes) + + + Just some funny outtakes from the Notting Hill Carnival video. +
+ + + 42. London Video Interviews Pt 3 (Audio) + + +
+ + + 41. London Video Interviews Part 3 (Video) + + +
+ + + 40. Health / Feeling ill – Phrasal Verbs & Expressions + + + A funny episode featuring lots of vocabulary about feeling unwell. +
+ + + 39. Subtitles in Videos (Video) + + + A video with some comments and advice on watching videos without subtitles. +
+ + + 38. London Video Interviews Part 2 (Audio) + + +
+ + + 37. London Video Interviews Part 2 (Video) + + +
+ + + 36. London Video Interviews – Part 1 (Audio) + + +
+ + + 35. London Video Interviews – Part 1 (Video) + + + A video featuring native speakers in London. This video has over 1 million views on YouTube. +
+ 34. Promo Video: Coming Soon – Native English Speaker Interviews (no longer available) +
+ + + 33. Money Money Money – 12 Phrasal Verbs & more… + + + Vocabulary and chat about money matters. +
+ + + 32. Doctor Who + + + Everything you need to know about one of the UK’s favourite TV shows. +
+ + + 31. Hello! / Argument Sketch + + + Another quick message and a comedy sketch. +
+ + + 30. The Mystery Continues… + + + Listen to me tell the rest of the mystery story from episode 29. +
+ + + 29. Mystery Story / Narrative Tenses + + + A very popular episode – learn narrative tenses and listen to a short mystery story (especially for the Doctor Who and Sherlock fans out there). +
+ + + 28. Interview with a Native Speaker – The Weather + + + A funny conversation about the weather with a teenager from London called Chris. +
+ + + 27. British Weather (Lots of exciting vocabulary!!!) + + + All the vocabulary you need to talk about the weather in the UK! +
+ + + 26. Are you a good learner of English? + + + Important advice for how to be an effective learner of English. +
+ + + 25. Notting Hill Carnival – 40 Phrasal Verbs + + + A video diary about the Notting Hill Carnival, with 40 phrasal verbs. +
+ + + 24. Music Idioms + + + Learn some idioms related to music in this funny episode. +
+ + + 23. Summer Music Festivals + + + Everything you need to know about the culture of music festivals in the UK, and some vocabulary. +
+ + + 22. Full Interview with Vicky from China + + + The rest of the interview with Vicky. +
+ + + 21. Learning English with Podcasts – Advice from a Chinese student at Oxford University + + + An interview with a Chinese student studying at Oxford – talking about how to use podcasts to help your English. +
+ + + 20. Beware of Bad Pronunciation + + + Making fun of a viral video featuring someone doing a bad British accent. +
+ + + 19. Passive Verb Forms + + + A news story about Michael Jackson and then some essential grammar about passive verb forms. +
+ + + 18. 10 More Phrasal Verbs + + + Listen to a business meeting with Al Pacino, Robert DeNiro and Sean Connery and learn 12 phrasal verbs. +
+ + + 17. Hello To My Listeners Around The World + + + I respond to questions and comments from listeners around the world, including various questions about learning English. +
+ + + 16. Michael Jackson + + + Interviews with my friends about the king of pop. +
+ + + 15. Extra Podcast – 12 Phrasal Verbs + + + Learn 12 really useful phrasal verbs. +
+ + + 14. British & American Pronunciation + + + Listening to a talk about international English, then a language focus on differences between British and American pronunciation. +
+ + + 13. Video Podcast – I LIKE IT! + + + A vocabulary lesson on 16 alternative ways to say “I like it”. +
+ + + 12. Extra Podcast – Quick Hello 3 + + + Another quick message and a comedy sketch with transcript. +
+ + + 11. Men vs Women + + + (with Nick, Howard, Shirley & Michelle) Interviews with my friends Nick, Howard, Shirley and Michelle about differences between men and women, and the book “Men are from Mars, Women are from Venus”. The language focus is on vocabulary used during the interviews. +
+ + + 10. Extra Podcast – Quick Hello 2 + + [TA] + + A quick message from me, some information about Monty Python’s Flying Circus and a comedy sketch. +
+ + + 9. Travelling in India + + [TBP] + + A conversation with my friend Ben about travelling experiences in India, with a language focus on expressions used during the conversation. +
+ + + 8. Dating and Relationships + + [TA] + + Vocabulary for talking about dating and relationships, and a comedy sketch. +
+ + + 7. Susan Boyle + + [TA] + + Talking about the reality TV pop star Susan Boyle, and a language focus on idioms to describe personality. + Transcript Key +
+ + + 6. Vampires! + + [TA] + + A lecture on the myth of the vampire in modern popular culture, with a language focus on vocabulary to describe emotions. +
+ + + 5. Joaquin Phoenix + + [TA] + + A conversation with my friend Howard about the actor Joaquin Phoenix, and a language focus on using modal verbs for speculation. +
+ + + 4. Extra Podcast – Quick Hello + + [TA] + + A quick message from me and a comedy sketch. +
+ + + 3. Music/The Beatles + + [TA] + + An interview with my Mum about The Beatles +
+ + + 2. Easter / Interview with my Dad / Language Focus: Adverbials + + [TA] + + An interview with my Dad about Easter and his childhood, with a language focus on using adverbials like “hopefully” and “apparently” +
+ + + 1. Introduction + + [TA] + + Who is Luke? What is Luke’s English Podcast? How can it improve your English? +

+

+

+ + +
+ + + + + +
+ +
+ +
+
+ +
+ +
+
+
+ +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/test_parser.py b/tests/test_parser.py new file mode 100644 index 0000000..6c51c4c --- /dev/null +++ b/tests/test_parser.py @@ -0,0 +1,30 @@ +"""Test cases for the parser module.""" +from pathlib import Path + +import pytest + +from lep_downloader import config as conf +from lep_downloader import parser + +OFFLINE_HTML_DIR = Path( + Path(__file__).resolve().parent, + "fixtures", +) + + +def mock_archive_page(request, context): + """"Callback for creating mocked Response.""" + context.status_code = 200 + # resp = io.StringIO() + resp = OFFLINE_HTML_DIR / conf.LOCAL_ARCHIVE_HTML + return open(resp, "rb") + + +def test_parsing_result(requests_mock) -> None: + """It parses mocked archived page.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) + all_links = parsing_result[0] + assert all_links is not None + assert len(all_links) > 781 + assert "/2009/04/12/episode-1-introduction" in all_links[-1] \ No newline at end of file From 82c6595e1729ac40f2ca485f4285d34cb9b5c965 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 17 Sep 2021 11:10:26 +0300 Subject: [PATCH 08/54] chore: Add test HTML files for several episodes to mock them in tests --- ...21-08-11_lep-e703-page-content-pretty.html | 1142 ++++++++++++++ ...21-08-11_lep-e711-page-content-pretty.html | 1363 +++++++++++++++++ ...21-08-11_lep-e733-page-content-pretty.html | 1183 ++++++++++++++ ...009_10_19_episode-11-michael-jackson_.html | 901 +++++++++++ ...10_19_extra-podcast-12-phrasal-verbs_.html | 573 +++++++ ...0_03_25_london-video-interviews-pt-1_.html | 698 +++++++++ ...93-culture-shock-life-in-london-pt-2_.html | 645 ++++++++ ...k _2015_10_07_300-episode-300-part-1_.html | 785 ++++++++++ ...k _2015_10_07_300-episode-300-part-2_.html | 816 ++++++++++ ...70-in-conversation-with-rob-ager-from.html | 738 +++++++++ ...ep-on-zep-my-recent-interview-on-zden.html | 589 +++++++ ...-was-invited-onto-the-english-across-.html | 560 +++++++ ...ebsite-only-a-history-of-british-pop-.html | 613 ++++++++ ...207\251\360\237\207\252-wisbolep-run.html" | 810 ++++++++++ ...9_27_113-setting-the-world-to-rights_.html | 586 +++++++ ...k _2009_04_12_episode-1-introduction_.html | 569 +++++++ 16 files changed, 12571 insertions(+) create mode 100644 tests/fixtures/ep_htmls/2021-08-11_lep-e703-page-content-pretty.html create mode 100644 tests/fixtures/ep_htmls/2021-08-11_lep-e711-page-content-pretty.html create mode 100644 tests/fixtures/ep_htmls/2021-08-11_lep-e733-page-content-pretty.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html create mode 100644 "tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-\360\237\207\251\360\237\207\252-wisbolep-run.html" create mode 100644 tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html create mode 100644 tests/fixtures/ep_htmls/2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html diff --git a/tests/fixtures/ep_htmls/2021-08-11_lep-e703-page-content-pretty.html b/tests/fixtures/ep_htmls/2021-08-11_lep-e703-page-content-pretty.html new file mode 100644 index 0000000..08bd6bf --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-08-11_lep-e703-page-content-pretty.html @@ -0,0 +1,1142 @@ + + + + + + + + + + + 703. Walaa from Syria – WISBOLEP Competition Winner 🏆 | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+
+ +

+ 703. Walaa from Syria – WISBOLEP Competition Winner 🏆 +

+ + +
+ +
+

+ Walaa Mouma from Syria has an amazing and inspiring story for all learners of English around the world, and some specific tips on how to improve your English long-term. Listen to this episode to hear all about it. + + Transcript and text video available. + +

+

+ Audio Version +

+ + + + +
+ + + + + +
+ +

+ + Small Donate Button + +

+

+ [ + + DOWNLOAD AUDIO + + ] +

+

+ Download the Full Transcript +

+ +

+ Text Video Version +

+
+
+ + + +
+
+

+ Links +

+ +

+ Let us know your thoughts in the comment section! +

+ + +
+ + + + + +
+ + +
+ + + +
+ + + +
+
+
+ +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/fixtures/ep_htmls/2021-08-11_lep-e711-page-content-pretty.html b/tests/fixtures/ep_htmls/2021-08-11_lep-e711-page-content-pretty.html new file mode 100644 index 0000000..00b6e39 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-08-11_lep-e711-page-content-pretty.html @@ -0,0 +1,1363 @@ + + + + + + + + + + + 711. William from France 🇫🇷 (WISBOLEP Runner-UP) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+
+ +

+ 711. William from France 🇫🇷 (WISBOLEP Runner-UP) +

+ + +
+ +
+

+ William started learning English at 12 years old and continued at university and beyond, spending a couple of years in England as a teaching assistant and then returning to France to work as a school teacher, in some pretty tough classrooms and less-than-perfect teaching conditions. William talks about how he continues to maintain his English, the importance of finding good language exchange partners, and more. +

+

+ +

+

+ + Small Donate Button + +

+

+ [ + + DOWNLOAD + + ] +

+

+ Notes for the Introduction and Ending Monologues (not a 100% complete transcript) +

+

+ Hello listeners, I hope you’re doing well. In this episode you’re going to listen to a conversation with another LEPster picked by other LEPsters for an appearance on this podcast. This time it’s the turn of William from France who came joint 3rd in the competition – it was a tie between William and Robin from Hamburg, and Robin will be on the podcast soon as well. +

+

+ Right so this episode is the latest in the WISBOLEP series and WISBOLEP means Why I Should Be On Luke’s English Podcast and it was a competition I launched last year in which listeners sent in short recordings to persuade members of the audience to vote for them to be chosen for an interview on my podcast. So far I have spoken to the winner – Walaa from Syria and the 2nd place contender Tasha from China. Let’s now return to Europe and talk to William who lives in France. Shout out to all the French LEPsters. Salut les francais, et les francophone, ca va? +

+

+ I think these WISBOLEP interviews are really interesting and there is a lot to gain from listening to them. +

+

+ Sure, there will be some people who will decide that they just can’t listen to another learner of English and only native speakers of English are worth listening to. I can understand that to an extent, but I do think that completely dismissing non-native speakers of English like that is a mistake. +

+

+ Learning English is a complex and personal process and I think there is a great deal to be gained from listening to other learners describe their experiences and methods of learning English. This can give you inspiration in terms of specific things you can do to improve your learning, and generally it can give you a lot of perspective about what it really means to be a learner of English or a speaker of English as a second language, what proficiency really is, what fluency really means, how important perfection is compared to having the initiative to just go out there and start using English. Also it can give you a sense of camaraderie with other fellow learners, and it’s very healthy to know that you are part of a community of similar language learners around the world, all of whom are trying to work on their English level in various ways. Some people are better than others, but everyone is going through a similar process. +

+

+ We are all learners of English in a way, including me, and it’s wrong to think that learning English has a specific end point or conclusion to it. It’s a never ending process and there are always things to learn and ways to improve in terms of how we use this tool to communicate with people more effectively. +

+

+ Perfection is not necessarily the thing to expect from yourself or others. It’s a high ideal to strive towards but if you only accept perfect English, then prepare to be disappointed, both by yourself and by others. Setting perfection as your ultimate goal is quite unrealistic and doesn’t really reflect the nature of English as a pragmatic language. When you’re using English in the real world, it’s not necessarily about having flawless English but about the results that you achieve with your English. It’s “connection not perfection” as the girls from AEE always say. +

+

+ This doesn’t mean that you shouldn’t be ambitious or that you shouldn’t try to do your very best in English. It’s important to try to be better at English of course. But little mistakes are inevitable, holes in your knowledge of English are inevitable and you should not let these things stop you on your journey with this language. We have to try to accept that we will make mistakes and we have to learn from them. You have to be philosophical about it. +

+

+ Another idea that strikes me as I listen to these WISBOLEP episodes is that curiosity and a willingness to take a few risks are really important. It seems to help your progress in English if you are willing to go out of your comfort zone a bit and throw yourself into situations that will ultimately help your English to develop. Be curious all the time and keep moving forwards in your quest to know more, learn more and get more control over the language, even if you never really get to the end – in fact there isn’t really an end point. Be patient and don’t let little obstacles get in your way. +

+

+ I could bang on about this kind of stuff all day, but I will conclude by saying that it’s up to you to find your own motivation to keep going with English. There is no “one perfect way”. Everyone has to find their own path, and I think it’s a long-term thing. At the very least, certainly for the next hour or so I hope you simply enjoy listening to William and me talking about his experiences, with an open mind and a sense of curiosity, and don’t underestimate the value of listening to fellow learners of English. +

+

+ I would say, try not to compare yourself to others too much, and equally, don’t judge others too harshly. Just try to take inspiration from other people’s stories and examples. +

+

+ This brings us to William from France, and in fact this conversation demonstrates a lot of those ideas that I just mentioned. +

+

+ Just a little bit of background info on William before we start, just to give you a sense of the context from which he learned English. +

+ + +
+ + + + + +
+ +

+ William is from a town just outside Paris, called Combs de Ville. His parents are from the French West Indies and more specifically from an island called Guadeloupe, which is a French overseas department and region of France in the Caribbean. So his parents were from there originally and they moved to France in their twenties. William was born in France. He grew up learning French as his first language, but his parents did still speak Creole (the local language from Guadeloupe – but no English. In his own words “Creole and French were the main languages used at home but my parents didn’t want me to use Creole. We were in France so French was the only language I was allowed to use. So it was a bit strange to be able to understand a language without being able to use it.” +

+

+ As you’ll hear, English didn’t come into William’s life until he started learning it at school like everyone else in France at the time, at about the age of 12. But he took to it and liked it. I wonder if having several languages in the household growing up had anything to do with that. It’s possible. But in any case, William didn’t get a head start on his peers in terms of English. +

+

+ I’m not going to explain in advance all the main points in our conversation. Instead, I will let you discover it as you go. What I will say is that I really enjoyed this chat, and you will find that it gets more focused, more specific and more insightful as it goes on. +

+

+ That’s it from me now. I will speak to you again on the other side of this conversation with a few reflections and thoughts, but now, let’s hear from William from France, who came joint 3rd in the WISBOLEP competition. +

+

+ Oh one other thing, before I forget. William wanted me to add something at the start of this episode – and that is to say a big thank you to all the people who voted for him in the competition, giving him the chance to be featured in an episode of the podcast. So, thanks from William. +

+

+ ——- +

+

+ Ending +

+

+ So that was William from France. I really enjoyed talking to him. He’s a lovely guy and here are some of the things I took away from this. Here are some thoughts and reflections. +

+
    +
  • + English is a journey not a destination. +
  • +
  • + There’s no end point in terms of learning English. It’s like being a musician or a sports player. There’s always training to be done and room to improve in terms of technique, general fitness and fluency and so on. You have to practise all the time and there are always ways in which you can gain more control and more efficiency in how you use English to express ideas. This is true for native speakers of the language as well, including me. I see myself as a work in progress too, in terms of how effective I am as a speaker or writer of English. +
  • +
  • + Finding language partners for language exchanges can be a great way to get regular practice into your life, but you have to find the right person, and this can take a long time, but don’t let that stop you – keep searching, keep talking to different people until you find someone who is right for you. This could be true of one to one teachers as well. Sometimes you need to shop around a bit. Remember, like William you can find language exchange partners, conversation partners and English teachers on italki. Italki is both a sort of marketplace for online teachers, but also a social network which you can use to find other language learners, and that could include fluent English speakers who want to learn your language, and like William you could just informally set up conversations with these people and spend some time speaking English and some time speaking in your language, and if you get the right person that can be an invaluable source of practice for you. To sign up for italki you can still use my link, which is + + www.teacherluke.co.uk/talk + + and if you access italki that way and then buy some lessons with a teacher, italki will send you a discount voucher worth 10 dollars which you can use next time. +
  • +
  • + BUt the point there is → be patient, be dedicated, keep searching, don’t give up and you could find someone who you can practise your English with on a regular basis in a mutually beneficial way. It could be a way to make new friends as well. +
  • +
  • + Finally – stay curious, about English – especially in terms of learning about how the language works in order to work on your grammar in a sort of organic way – just trying to work out how the language works, referring to grammar books (a tip could be Practical English Usage by Michael Swan – a good reference book for English grammar and usage) and also stay curious about other people, because this is really important in developing good communication skills. It’s not just about how well you can speak and express yourself, it’s about how well you interact with other people and listening to others is a big part of that. So, be curious about the language, but just be curious about people you meet and be interested in other people when you talk to them and you’ll find that your communication skills will thrive as a result of that. I feel that that’s something William does – he is interested in other people and that’s a strength of his. It’s one reason why he communicates well. +
  • +
+

+ OK, just some thoughts that occurred to me at the end of this episode here. +

+

+ Feel free to share your thoughts too in the comment section. +

+

+ I would also like to say that talking to William gave me a little boost. He said some nice and sincere things about this podcast, about how it has helped him and how I might be helping other people and I appreciated it. So good luck to you William and all the listeners who are still listening all the way up to this point in the episode. +

+

+ That’s it from me, +

+

+ I will speak to you in the next episode. Again – a reminder that I am also working on Premium series 29 – What did Rick Say? And so premium subscribers – look out for new episodes in that series arriving very soon. teacherluke.co.uk/premiuminfo for more details and to sign up. +

+

+ Have a lovely day, morning, evening, night! Stay safe! Stay positive! Stay curious! +

+

+ Speak to you soon. +

+

+ Bye bye bye bye bye. +

+

+ Song: Don’t Let Me Down by The Beatles +

+

+ Lyrics here + + www.azlyrics.com/lyrics/beatles/dontletmedown.html + +

+

+ + Podcast Image: Cork Map by “Miss Woods” in Barcelona + + + misswood.eu/fr/collections/mapas-de-corcho + +

+

+ P.S. I think I found my meme 👇 +

+
+ + + +
+ + +
+ + + + + +
+ + +
+ + + +
+ + + +
+
+
+ +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/fixtures/ep_htmls/2021-08-11_lep-e733-page-content-pretty.html b/tests/fixtures/ep_htmls/2021-08-11_lep-e733-page-content-pretty.html new file mode 100644 index 0000000..e62af33 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-08-11_lep-e733-page-content-pretty.html @@ -0,0 +1,1183 @@ + + + + + + + + + + + 733. A Summer Ramble | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+
+ +

+ 733. A Summer Ramble +

+ + +
+ +
+

+ A pre-holiday ramble in which I talk about learning English, moving to a new flat, the podcast over the next few months, football, being on Other People’s Podcasts, a recording of my daughter speaking English and a couple of songs. Video version available. +

+

+ Audio Version +

+

+ +

+

+ + Small Donate Button + +

+

+ [ + + DOWNLOAD AUDIO + + ] +

+

+ Video Version +

+
+
+ + + +
+
+

+ Notes +

+

+ There’s no script for this episode. All I have is a list of one-word prompts to help me remember what I should be saying. +

+
    +
  • + + YouTube + +
  • +
  • + + Beard + +
  • +
  • + + English + +
  • +
  • + + Moving + +
  • +
  • + + Holiday + +
  • +
  • + + Premium + +
  • +
  • + + Football + +
  • +
  • + + OPP + +
  • +
  • + + Daughter + +
  • +
  • + + Music + +
  • +
+

+ Luke on Other People’s Podcasts +

+

+ + The Level Up English Podcast with Michael Lavers + +

+
+
+ + + +
+
+ + +
+ + + + + +
+ +

+ + English 2.0 Podcast with Al Slagle + +

+

+ +

+

+ + Glass Onion: On John Lennon by Antony Rotunno + +

+

+ +

+

+ + Luke on the Stories of Language Learners Podcast + +

+

+ +

+

+ Luke on other podcasts (coming soon) +

+ + + +
+ + + + + +
+ + +
+ + + +
+ + + +
+
+
+ +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html new file mode 100644 index 0000000..5ef79ab --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html @@ -0,0 +1,901 @@ + + + + + + + + + +16. Michael Jackson | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

16. Michael Jackson

+ +
+ +
+


+Right-click here to download this episode.

+

This podcast is about the life and death of Michael Jackson, and is produced to help people learn English by practising their listening skills and developing their vocabulary. Luke’s English Podcast is a free audio programme for learners of English. Luke is a well qualified English teacher of 8 years experience. He lives and works in London.

+

Two weeks ago the death of Michael Jackson was announced. Since then, people all over the world have been mourning his loss. In this podcast, you can listen to short interviews with English people from London and their opinions on Michael Jackson’s music, dancing, children, plastic surgery, fans and his death.

+

Before that though, here’s some news!

+

The school that I work for (The London School of English) has recently started a blog. It’s called The London School of English World Blog. On this blog you can read about news and stories about the teachers, the school and London. It is written by some of the teachers at the school, including me (and Ben from the podcast about India). We also teach some vocabulary on this blog.

+

Visit the blog by clicking here:
+The London School of English World Blog

+

Visit The London School of English here:
+The London School of English

+

Also, I am now on Twitter. You can follow all my ‘tweets’ (news updates on Twitter) by clicking here: Luke’s English Podcast on Twitter

+

I will use Twitter to write very short updates to tell everyone what I’m doing and to give you little bits of news (e.g. on what my next podcast will be, or what I’m doing at the weekend). I will also teach you cool little words using Twitter, so keep visiting the page. Twitter is a really good way to keep up with what is happening in the world, and it is really easy to use.

+

The Life & Death of Michael Jackson

+

I thought it would be interesting for you to listen to the opinions of some ordinary Londoners, so I decided to interview some of my friends about Michael Jackson. Below, you can read their comments. Listen to the podcast to hear me explain some of the words and expressions they use.

+

1. Kevin (actually from Norwich, not London) on MJ’s music:
+“I do find that I quite like Michael Jackson’s music. It’s quite catchy and errr melodic. The only thing for me is, the ‘kid thing’ kind of stained it a bit so every time I listen to it, I have to sort of put that bit out of my head… but… erm… I’ve got to admit, when I do hear a Michael Jackson tune I do feel like getting up and doing a bit of the moonwalk and everything. So, err, my favourite Michael Jackson song is Man In The Mirror. I proposed to my girlfriend with that one, so, it’s got a special place in my heart. Obviously, if we have kids, probably, won’t like it as much, but… it’s good stuff!”

+

2. Florence on MJ’s face:
+“OK, so, Michael Jackson’s face. Well, it’s quite a weird face, it’s probably one of the most famous faces in the world. Erm, I think the weirdest thing is when you just look at pictures of him as a child and he’s completely unrecognizable. You wouldn’t even know that it’s the same person. But I do slightly get the feeling that it’s just gonna fall off any minute, because it just looks really… I don’t know! The skin just doesn’t look normal. It looks very frail, very pale. And, yeah, the fact that he denied having any plastic surgery or anything to change the colour, I just find very odd. I mean… maybe there’s some truth in it, but he’s obviously had a lot of work done on it. So, yeah, I find the whole thing… it’s quite depressing really, just knowing he must hate his face so much, or the face that he used to have so much that he’s changed it to the point where he just doesn’t, I mean he just doesn’t look like a normal human being, he looks like some sort of weird, y’know, parts of a face put together.” Luke: “It’s just a little bit weird.” Florence: “Very weird” Luke: “Slightly strange”

+ + + +
+ + +
+ +

3. Raphael (actually from Liverpool, not from London) on MJ’s fans:
+“Yeah, so, Michael Jackson’s fans. I dunno, I mean, I feel a bit sorry for his fans, I think, actually, because I think he’s one of these people with truly obsessive fans, you know? And actually, it’s actually quite tragic because some people have actually been killing themselves because they want to be with Michael, which I think is just, ummm, y’know, completely mental to be honest with you. Umm, I wouldn’t really say that I am a fan. I like him, or liked him, but I wouldn’t say I’m like a… I mean I didn’t have posters or anything like that. I had, like, one or two albums when I was a kid, but, yeah he’s got a lot of them and I think it was estimated that he was going to bring about a billion pounds to London or something through these 50 concerts, so I guess that just shows you how many people were out there and how many people are going to be, like, pretty err, pretty devastated now that he’s no longer with us.”

+

4. Shirley on MJ’s death and funeral:
+“Well, when I first heard that he’d died, when I woke up in the morning and heard the it on the news it was a shock but I think I was over it in about 5 minutes. I think it’s all a bit hyped up. It’s very sad that he’s dead, it’s very sad when anybody dies, but I don’t really get it. I don’t really understand why people are, you know, gone into full mourning over the whole thing. I watched the funeral actually, because I was in a situation where I didn’t get to switch over… and well, it was like watching a concert really, and there was lots of people jumping on the band-wagon and everyone loves Michael and everyone was his best mate and err, yeah, Uri Geller, everyone was his best mate and then the thing that I didn’t like at the end is, his daughter was on the stage and she was really upset and one thing that he had done was try and keep them out of the spotlight their whole lives and the first thing that happened when he died is that they’re in the middle of it. I didn’t really like that very much but, anyway I suppose it’s a… well it’s sad but like I said I don’t think I’m going to lose any sleep over it.”

+

5. Claudia on MJ’s children:
+“I suppose the first thing I think about when I’m trying to remember Michael Jackson’s kids, are, is, Bubbles his monkey because that’s the first thing I really associated with him when I was a kid, and then I guess I didn’t really think about his children much until he dangled Banket over the balcony and everyone thought he was nuts, erm, and I know he’s got three, I think three children. Paris, Prince Michael the 1st or 2nd and the 3rd or something, err, the little one’s called Blanket, I know that, erm… and… I know there’s a lot of scandal over whether or not they’re his. He always covered up their faces so no-one really knew. Some people thought it was to protect them. Some people thought it’s because he’s a freak. So, no-one really saw them but then when I did see them, they didn’t look anything like him. Actually, the oldest, the boy, the older boy weirdly looked a bit like he does or he did recently after his plastic surgery and whitening of his skin, so I don’t know quite how it works. But, erm, I think one of them has a different mother or something. I know there’s a lot of discussion about what’s going to happen to them now he’s dead. I read somewhere that he wants Diana Ross to have them, but she’s not that up for it. Erm, maybe his parents might have them. Errrr, and, yeah I suppose the latest thing is that they’ve been revealed on TV and Paris has moved the world with her emotional tribute to her daddy, so, erm, yeah that’s about all I know.”

+

6. Michelle (actually from Norfolk, not from London – but she lives in London now) on MJ’s dancing:
+“Well Michael Jackson was a completely amazing dancer ok? I can remember trying to moonwalk in the kitchen and it all ended in tears. I think I ended up smashing my face on the tumble dryer. Our Mum actually banned us from moonwalking in the kitchen, so, err…”
+Luke: “Seriously?”
+Michelle: “Yeah, this truly did happen. Yes, we did, we did yeah. Because trainers didn’t work, you need slippery shoes and err, it all got a bit dangerous but he was amazing. Thriller was a great video wasn’t it?”
+Luke (rudely interrupting): “It was dangerous because you didn’t have slippery shoes? So would it have been safer with slippery shoes?”
+Michelle: “If we’d had slippery shoes it would have been so much safer…”
+Luke (not making any sense): “I think what this is, is, errr, a joke, right?”
+Claudia: “Justin Timberlake… everyone says he’s an amazing dancer”
+Michelle: “Justing Timberlake doesn’t compare”
+Luke: “Justin Timberlake… this has just broken down into nonsense… OK, so final point?”
+Michelle: “Michael Jackson rules”
+Luke: “And on that bombshell, I’m going to press ‘stop'”

+

7. Dong-Jin (from Korea) on MJ & Korea:
+“He was the person who was interested in Korea, because, you know, in Korea there are some problems between North and South and he was trying to help us, you know? And also, yeah yeah yeah, that’s why most Korean people love him. Because, they, he had a concert and also, I don’t know exactly. We knows that, we know that… I don’t know how can I explain… My favourite song is, We Are The World… sorry sorry. Honestly, for me ‘Dangerous’ because his performance is really nice. Michael Jackson, we love Michael Jackson, especially for his personality, because, you know, even though he’s got a lot of rumours, we don’t believe. Honestly, I don’t want to believe, you know. I want to just focus on his achievements, something like that. And, err, even… errr. I really like him. That’s all…”

+

8. Andy P(from Birmingham):
+Luke: I’m going to ask some of my friends about the whole Michael Jackson thing now. Err, Andy.
+Andy P: Hello
+Luke: Err, where were you when you heard that Michael Jackson had died?
+Andy P: I was at home.
+Luke: Right… and how did you find out?
+Andy P: Err, on a website, on the Guardian website.
+Luke: What time did you discover the bad news?
+Andy P: In the morning. 9 o’clock-ish
+Luke: Right… So what did you do when you realised the truth of the situation?
+Andy P: Well, I realised the truth quite quickly that he had died, so that was not much of an issue. Umm, and then I just looked at some other news.
+Luke: What, did you cry at all?
+Andy P: No.
+Luke: RIght, ok, thanks Andy!

+

9. Neil (from Birmingham):
+Luke: Neil! Neil, so just err, what thoughts ran through your head in the hours after you realised Michael Jackson had passed away?
+Neil: I’m going on holiday.
+Luke: Ok, but didn’t you, sort of, feel any emotions at the time?
+Neil: Err, I was in quite a big hurry. Errr…
+Luke: ‘Hurry’ isn’t technically an emotion, Neil, so… talk about your feelings. Ok? Don’t worry, don’t be shy. What happened, on that fateful morning?
+Neil: I went on holiday.
+Luke: Ok. You can see I’m getting a lot of information here.

+

Dave (from Birmingham):
+Luke: Dave, Dave! Dave’ll tell me lots of things. Tell me about Michael Jackson.
+Dave: Well, he was a large part of my life for many years. Certainly towards the latter part of the 20th century, his music, in my opinion, became less and less of the kind of thing I’d like to listen to…
+Luke: So you like his early stuff rather than his late stuff
+Dave: I think that’s not that outrageous. Most people, felt similarly about him. The day he died, I was awake in bed, it was around 4.30AM when I found out and the BBC news started to do blanket coverage… that means they were doing it all the time…
+Luke: So they weren’t reporting any other news, it was just Michael Jackson
+Dave: Absolutely, yes.
+Luke: Blanket coverage. Like a blanket over your bed. So bizarrely, you were in bed…
+Dave: …with the blanket over me…
+Luke: …when the BBC started doing blanket coverage…
+Dave: …of Michael Jackson’s death. I texted a friend of mine who takes particular interest in this, but he’d already found out off three other people that Michael Jackson… that The Jackson 5 were now the Jackson 4…
+Lizzie: Soundbite!
+Dave: I certainly wasn’t upset! I think, you know, “MAN DIES” isn’t necessarily news…
+Luke: Right, well, if it’s Michael Jackson it’s news, isn’t it?
+Dave: That’s arguable. That’s contentious.
+Luke: I’ll explain what contentious means later…
+Dave: But, erm, yeah it’s upsetting for family members, but from a personal perspective it’s not something I necessarily consider to be newsworthy.
+Luke: Right. Can you sum up the whole thing in a word, perhaps?
+Dave: Overblown.
+Luke: How about a sound?
+Dave: Heeeeeehehhhh heh eh heheh eheh
+Luke: Right, thank you. Thank you very much. I don’t think I’ll use that. But that was very… David’s comments were a lot more interesting than everyone elses. Liz, do you have anything to say on the subject? … No? Ok, she want’s to go back to sleep I think. Erm, right, everyone wants to go home. That’s it. That was, erm, slightly underwhelming…

+

Jim (Dave’s brother, from Birmingham):
+Luke: How did you feel when Michael Jackson died Jim?
+Jim: Nothing.
+Luke: No change of emotions at all.
+Jim: Nah. It happens to everyone eventually.
+Luke: It does, yeah. Very philosophical. Erm, generally what did you think of Michael Jackson?
+Jim: Errr, he had a hard life.
+Luke; yeah? What about all that money? That was quite nice for him…
+Jim: Yeah, but he was pushed into, err, celebrity-ism.
+Luke: Ok, I’ll explain what celebrity-ism means later… It’s good. It’s a good word, but I expect that all the listeners won’t understand what that means, but that’s fine. What did you think of his music?
+Jim: Yeah it was wicked. [wicked is a slang word which means ‘really good’]
+Luke: Ok, erm, what about his face?
+Jim: That was a shame… err… could have had a bit of work… err… do to…
+Luke: Yeah, ok, he had a bit too much work done, didn’t he? Well thanks for… Any other comments about him?
+Jim: No.
+Luke: OK! Thanks! Liz! Liz!

+

Liz (Dave & Jim’s younger sister, also from Birmingham):
+Luke: Go on… what did you think of Michael Jackson?
+Liz: Erm, I found him quite a bizarre character. I did like his 90s music and I always will. Dirty Diana, and Man In The Mirror being my two particular favourites.
+Luke: What about the, sort of, news reports about him? You know, the negative reports… Where do you stand on that?
+Liz: I think that child molestation is a very serious accusation
+Luke: Yes it is. It is very serious. I don’t know why we’re all laughing,
+Liz: Erm, the very fact that that does have so much evidence around it does make me question in some depth Michael Jackson and his character.
+Luke: Right, so you think he might have actually done it?
+LizL Potentially, there is always that case if you take something to trial, is it not?
+Luke: Yeah, there’s the possibility that it’ll be proven that he did do it, yeah. Ok, thanks for your comments.
+Liz: No problem.
+Luke: Jolly good.

+

michael-jackson-facelift-before-after
+

+

Very interesting Michael Jackson interview with Martin Bashir – MJ does a British English accent at the start :)
+

+

Let me know if any of these YouTube videos is out of date. (BTW if you think this sentence is grammatically wrong – “shouldn’t it be ‘any of these videos are…?” then click here to find out more)

+

Some pictures of my friends from Birmingham

+ + + + + + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html new file mode 100644 index 0000000..42359ea --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html @@ -0,0 +1,573 @@ + + + + + + + + + +15. Extra Podcast – 12 Phrasal Verbs | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

15. Extra Podcast – 12 Phrasal Verbs

+ +
+ +
+


+Right-click here to download this episode.

+

Just a quick podcast today. 12 useful phrasal verbs.
+Listen to me read this text which contains 12 phrasal verbs. Can you find them all by listening and reading? I will explain them after you listen.

+

Here’s the text:
+“I haven’t got round to doing another podcast recently. I haven’t been putting it off. It’s just that I’ve been caught up in a lot of other things recently. I haven’t given up on it, and I haven’t run out of ideas. It’s just that all my time is being taken up by other things at the moment. I hope you haven’t gone off my podcast. I also hope you’re holding out for the next episode. You’ll just need to hold on a bit longer for the next one to be uploaded. Don’t forget to let me know how you’re feeling about the podcast. If you’re a bit pissed off that I haven’t uploaded a new one recently, just send me an email to let me know how you feel. Don’t bottle up your feelings – that’s very bad for you. Just tell me any comments you have and I’ll be very happy. I like getting your comments. They always cheer me up.”

+

So, did you find the 12 phrasal verbs?
+Here they all are:

+

1. To get round to doing something = to do something you haven’t been able to do for some time because you’ve been busy. “I finally got round to doing another podcast yesterday”

+

2. To put something off = to delay doing something, or to avoid doing something because you don’t want to do it. “I’ve been putting off doing my washing all week, but now I have to do it because I’ve got no clean socks left”

+

3. To be caught up in something = to be doing something which has stopped you doing something else. “I haven’t been able to do a podcast recently because I’ve been caught up in a lot of other things”

+

4. To give up on something = to quit doing something because you feel it isn’t going to be a success. “I gave up on being a rock star, because I couldn’t get a recording contract”

+ + + +
+ + +
+ +

5. To run out of something = to use all you have and have nothing left “I ran out of milk last night so I didn’t have enough for a cup of tea this morning” (in England we have milk in our tea – we’re strange aren’t we?)

+

6. It takes up my time / My time is taken up by it = it uses all my time. “Work is taking up all my time at the moment – I don’t have time to do anything else”

+

7. To go off something = To stop liking something that you used to like. “I’ve really gone off Brad Pitt – he’s not so handsome anymore” (ladies – is this true? or is he still Mr Wonderful?)

+

8. To hold out for something = To wait for something that you really want or really need. “Great Britain is holding out for a tennis victory in the Wimbledon tournament this year.”

+

9. To hold on = wait. “Hold on a minute, I need to put on my shoes”

+

10. To be pissed off = (quite rude) Angry, annoyed, irritated. “I’m really pissed off with my neighbours – they keep making so much noise at night”

+

11. To bottle up your feelings = to keep your feelings inside and not say how you feel. “Don’t bottle up your feelings darling – if you have something to say to me, just say it! Do you still love me? Do you? DO YOU?”

+

12. To cheer someone up = To make someone happy. “John is a bit sick at the moment, so send him a card. It’ll really cheer him up.”

+

That’s it. Bye for now…

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html new file mode 100644 index 0000000..cfec09d --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html @@ -0,0 +1,698 @@ + + + + + + + + + +36. London Video Interviews Pt.1 | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

36. London Video Interviews Pt.1

+ +
+ +
+

+

Full Transcript Available Below
+To download the audio for this episode, right-click here.

+

Here is the first of a series of video podcasts featuring interviews with people I met in the centre of London recently. I went into London on a Tuesday morning and politely asked members of the public if they would like to do a short interview for people around the world who are learning English and who are interested in listening to native speakers, and finding out about life in London. Some people didn’t want to be interviewed, and ignored me! But most people I asked were very friendly and happy to talk to me for a few minutes. This is the first video, and includes interviews with people outside Buckingham Palace (home of The Queen), in St. James’s Park and on The Mall (the road towards Buckingham Palace). I hope you enjoy them, and find them useful. There are more videos coming soon, featuring interviews in different parts of central London.

+

Watch the video and try to understand their comments.
+Then use the transcript to help you understand what they said.
+Try to guess the meaning of any expressions you don’t know.
+You can find some definitions of vocabulary and expressions at the bottom of the transcript.
+The people in the interviews come from different places. Listen carefully and see if you can identify differences in the accents they have.

+

TRANSCRIPT

+

London! Capital of Great Britain. Home to over 7 million people, including: The Queen, The Prime Minister, Sherlock Holmes, James Bond and Mr Bean.
+ Considered by some to be the home of the English language, it’s also one of the biggest and more important financial and cultural centres in the world. It has a rich cultural history, a diverse population and loads of cool stuff to do at the weekends.

+

But what is London really like for the people who live there?

+

Hi, well, I’ve got a video camera, I’ve got an Oyster card and I’ve got the day off, so I’m going to go into the centre of London, meet some real Londoners and ask them, “what’s London really like?” Why don’t you join me? Come on, let’s go shall we?

+

Buckingham Palace:

+

This man is from somewhere in the south of England, possibly in London or near London. He has a southern English accent.
+ Luke: So, um, what do you think of London? What’s it really like?
+ Man: London’s a very nice place to be, yeah.
+ Luke: Yeah?
+ Man: Yeah.
+ Luke: What’s the best thing about it?
+ Man: The best thing is the architecture, the old stuff…
+ Luke: Yeah, yeah. Like Buckingham Palace
+ Man: Like Buckingham Palace, yeah
+ Luke: What about…
+ Man: Anything else, yeah?
+ Luke: What about the worst thing?
+ Man: The worst thing is… all the rest, I’m afraid.
+ Luke: Everything else?
+ Man: Everything else, gone to the dogs.
+ Luke: Really, it’s all gone to the dogs?
+ Man: With the country.
+ Luke: Ok. Alright, thank you very much. Cheers.
+ Man: Thank you.

+

These girls are from Hull, which is in Yorkshire in the north of England. They’re in London on holiday. They have Yorkshire accents.
+ Luke: Hello
+ Girls: Hi!
+ Luke: So, where are you from?
+ Girls: Erm, Hull.
+ Luke: Hull? Ok, so how long have you been in London?
+ Blonde girl: We came yesterday
+ Luke: Ok, what do you think? What’s London like?
+ Redhead girl: Really good!
+ Blonde girl: It’s a bit busy
+ Brunette girl: busy
+ Luke: Right, okay. What’s, err, what’s the best thing about it?
+ Redhead girl: The weather, the last couple of days
+ Blonde girl: Yeah, it’s been hotter than it is back home
+ Redhead girl: It’s been really nice, yeah.
+ Luke: So it’s better here than it is in Hull, is it?
+ Redhead girl: It is
+ Blonde girl: Yeah, but we couldn’t live here all the time
+ Redhead girl: The worst thing about it is the tube, the underground
+ Luke: Why? What’s wrong with the tube?
+ Redhead girl: It’s too stressful
+ Brunette girl: It’s too hot and busy
+ Redhead girl: and grimy
+ Luke: Busy, grimy, stressful… ok. Anything else to say to the people of the world?
+ Blonde girl: Come to London!
+ Redhead girl: Hiiii! Come to Hull to go out with us
+ Blonde girl: Come to Hull
+ Redhead girl: We’ll have lots of fun
+ Luke: Great, thank you very much

+

This couple is from New York City in USA. They have New York accents.
+ Luke: Hello. So, where are you from?
+ American man: We’re from the good old USA, the biggest city in the world, New York…
+ Luke: Oh, amazing
+ American man: …which cannot compare to London.
+ Luke: Really?
+ USA man: I wanna just express our love for England, the people, and especially the British Airway[s] that brought us here. They were so polite and extended themselves to the best airline that I travelled [on] all over the world.
+ Luke: Great
+ USA Man: Now coming to England, we stayed at the Holiday Inn, and the people and the experience at the Holiday Inn was super.
+ Luke: Excellent
+ USA Man: We just came from the Holiday Inn to see the Buckingham Palace and now we’re going to from here to Picadilly Square [Circus]. Yeah, great.
+ Luke: Great!
+ USA man: Thank you
+ USA woman: A wonderful experience
+ USA man: A wonderful experience
+ Luke: I’m very glad, that’s great.
+ USA man: And where is this going?
+ Luke: This is going on a website for people who are learning English as a foreign language, so it’s just going to be on, err… I work for this school, The London School of English and also I’m going to put it on a kind of podcast website for people all over the world, so, that’s great.
+ USA man: Now, what is that over there? (pointing at the Queen Victoria Memorial)
+ Luke: That? Err, I’m not sure to be honest. Err, it’s…
+ USA woman: It’s a nice statue.
+ Luke: It’s a lovely statue, covered in gold.
+ USA man: Uh huh, okay
+ Luke: Err, it… I don’t really know who all these people are, to be honest with you.
+ USA man: Well, I’m gonna take a picture
+ Luke: Exactly. It’s big and it’s shiny, so just take a picture of it.

+ + + +
+ + +
+ +

St. James’s Park:

+

The man is from Middlesex, which is to the west of London. He has quite a posh accent. The woman is from the German/Danish border and has a German sounding accent.
+ Luke: So, where are you from? First of all.
+ Man: Well, I’m from Pinner, in Middlesex, which is near enough London, and we just come up once a week. It’s a long time ago now, I’m talking about before the war, and during the war, yes. A long time. And madam…
+ Woman: I’m from Schleswig-Holstein [on the German/Danish border] but I love London. Love it. My son lives here and I need to go from time to time, because… it’s such a life city isn’t it?
+ Luke: it is
+ Man: Recharge your batteries
+ Woman: Yes, yes. And, so green too! All these lovely parks, you know? And I think it’s the most beautiful city in the world.
+ Man: Sounds as though she’s selling it
+ Luke: Is she… it does! Yes. What do you think, I mean, we, err, you think it’s the most beautiful city in the world, but, is there a, what about bad things? What’s the worst thing about London?
+ Man: Well, I used to work just down there in Victoria… Victoria Station House. Erm, no, I… it tends to be a little dirty, a lot of rubbish around. I have the impression that’s got a bit better lately. I don’t know whether that’s true.
+ Luke: Right.
+ Woman: I was in Rome, and I told them all that London was much more beautiful and they all shouted me down, so…
+ Luke: Oh really…
+ Woman: But when the sun shines, you know… and all these green places, and nothing drives me mad because you expect a bit of dirt and… don’t you?
+ Luke: Yes, in the city
+ Woman: Yes
+ , yes. And it has good communication, I mean you can go everywhere, and I love it
+ Man: You’ll never stop her, but I must
+ Woman: So, shall we go now?
+ Luke: Great, thank you very much
+ Man: Not at all
+ Luke: Have a lovely day
+ Woman: You have a lovely day
+ Luke: Thank you
+ Man: Don’t you sell that
+ Luke: I’m not selling it, don’t worry. Alright, cheers.

+

The Mall:

+

Girl 1 is from Blackpool, which is in Lancashire in the North West of England. She has a Lancashire accent. Girl 2 is from Reading which is about 30 mins or 1 hour west of London. She has a fairly typical southern English accent.
+ Girl 1: Hello
+ Luke: Where are you from?
+ Girl 1: I’m from Blackpool, which is up north
+ Girl 2: I’m from just near Reading, just near London
+ Luke: Ok. So, how long have you been here?
+ Girl 1: I’ve lived in London for about 2 weeks so far
+ Girl 2: And I’ve lived in London for probably the last 4 years
+ Luke: OK, right so what’s London like then?
+ Girl 1: So far London’s quite exciting. I’ve been surprised by how many things are going on all the time, sort of, day and night. There’s always something to do, always something free to do, and so far it’s not rained!
+ Luke: Eyy! Great. Err, yourself?
+ Girl 2: Err, yeah the same, like, it’s been a good place to live. I don’t know, because I’ve been here for so long, I probably don’t really take as much advantage of it as I should do.
+ Luke: Yep, what’s the worst thing about London?
+ Girl 2: Erm… Traffic, commuting, going around, I think… Price.
+ Luke: Yeah, it’s very expensive. Have you discovered a worst thing yet?
+ Girl 1: Erm, honestly, the worst thing is it’s quite difficult to meet people, and because a lot of people live so far away, it’s quite difficult to get to them, it’s quite hard to see your friends, so it can sometimes be quite lonely.
+ Luke: Ok, thank you very much. Cheers.

+

Definitions of some vocabulary and expressions

+

What’s London really like?
+This question: “What is it like?” means “tell me about it” or “how is it?”. It does not mean: “What do you like about London?”
+e.g. What is London like? – it’s busy
+What do you like about it? – I like the theatres

+

It’s gone to the dogs = everything is much worse now than it was before

+

grimy = dirty

+

recharge your batteries = to give yourself some energy, by doing something pleasant and stimulating

+

to shout someone down = to disagree with someone loudly in order to stop them talking

+

to take advantage of something = to use something good which is available to you

+

commuting = travelling from home to work every day

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html new file mode 100644 index 0000000..84fb9b8 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html @@ -0,0 +1,645 @@ + + + + + + + + + +193. Culture Shock: Life in London (Pt.2) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

193. Culture Shock: Life in London (Pt.2)

+ +
+ +
+

More explanations of some common complaints about life in London. For part 1, click here. To download this episode, click here.
+
+Small Donate Button
+In part 1 I talked about some common complaints made by students regarding life in London. I think many of those complaints count as just examples of culture shock. In this episode I try and explain these issues, to encourage a broader understanding of why Londoners live the way they do.

+

Here are the complaints I talk about in this episode:
+8. “It’s too expensive”
+Yes, it is. :(

+

9. “The beer is warm! This is ridiculous!”
+Some types of beer are not supposed to be served chilled, but yes I agree – beer (particularly lager) is often not served cold enough. Often this is bad cellar management or just because the glass has just come out of the washing machine and is still warm – or the glasses are stored in a warm place next to a fridge.

+

10. “The houses are old and draughty”
+Yes, I do agree with this actually. In many cases, old buildings are not very energy efficient. Many buildings in London are from the Victorian era, and therefore have the original windows. They let draughts in sometimes, and don’t keep out the cold as well as they should. It may be necessary to install secondary double-glazing, but it’s a bit expensive and plenty of people choose not to do it. Here are some explanations for the draughty window complaint:
+a. It can be expensive to replace windows with modern ones. Some buildings are just cheap and poorly maintained because life in London is really expensive and people are attempting to make a living. Some landlords are greedy and don’t care about their tenants! Also, if you’re a student staying in ‘cheap’ short-let accommodation, you might get slightly poor facilities (even if it seems expensive to you – you might be renting property which is cheaper than the market average. Sorry!)
+b. We don’t feel the cold as much as you because we’re used to it.
+c. You are quite far north! It’s just colder up here. Blame geography!
+d. There may be old laws protecting the windows in these buildings. Although these windows aren’t as effective as modern ones, they add value to a property because they are the original, traditional windows. In London, we value the tradition, and the craftsmanship of these old windows. Ultimately, that is perhaps more important than the energy efficiency of the windows. Changing them would somehow reduce the aesthetic value of the buildings.
+There are plenty of new buildings in London which are constructed with excellent modern windows and insulation, so we are perfectly capable of installing good windows! So, to an extent I agree with this complaint.

+ + + +
+ + +
+ +

11. “The people are so reserved – they don’t talk to each other on the train.”
+One reason for not making conversation is because we don’t want to disturb the people around us.
+The city is so big that you’re unlikely to see the same person again, so what’s the point in getting to know a stranger.
+People are not unfriendly. They’re friendly enough. They’ll help you if you ask politely, but don’t expect to make friends right away.
+The train or bus is not the place for this. It’s more likely to happen in a social gathering.
+We don’t want to get stuck in a conversation for ages on a long journey.
+We give each other personal space, and don’t invade each other’s lives too much. Don’t impose yourself on other people! If you’re cool, you’ll understand this.
+It can be a bit stressful or even traumatic to be stuffed into a train, so close to everyone. Making eye contact or talking can be uncomfortable because people don’t have the option to ‘escape’ from the situation.
+People don’t want to be forced to be rude (to stop a conversation or something) and so they prefer not to start the conversation in the first place.
+People can be reserved, but we’re not mean. Just because people respect each other’s personal space it doesn’t mean we’re all cold hearted and unfriendly. In fact, it’s very considerate to not impose yourself on other people when they have busy lives to deal with.

+

12. “Why don’t people carry umbrellas even when it’s raining?”
+13. “The internet is so slow here”
+14. “You just don’t make any effort to speak other languages here. It’s just ENGLISH, and that’s it.”
+15. “Why oh why do the pubs close at 11PM!?? I’m just getting ready to go out at 11!”
+16. “English people aren’t civilised. They go to the pub and just drink and drink, standing up, without eating”
+17. “Cigarettes are ridiculously expensive”
+18. “People speak really fast here, and don’t try to help me understand”
+19. “When English people do the washing up, they use too much soap and then don’t rinse the soap off when they’ve finished. That’s like leaving poison on your plates”
+20. “They have carpet everywhere – even in the toilet sometimes”
+21. “They don’t take their shoes off when they enter a house. That’s disgusting isn’t it?”
+22. “The British have a weird sense of humour”.

+

Song
+At the end of this episode, I play the ukulele and sing a song called “Ape Man” by The Kinks. It’s at the end of the episode, so you don’t have to listen to it if you don’t want to! You can read the lyrics below.

+

Ape Man – The Kinks – Lyrics (video below)
+I think I’m sophisticated
+‘Cos I’m living my life like a good homosapien
+But all around me everybody’s multiplying
+Till they’re walking round like flies man
+So I’m no better than the animals sitting in their cages
+In the zoo man
+‘Cos compared to the flowers and the birds and the trees
+I am an ape man
+I think I’m so educated and I’m so civilized
+‘Cos I’m a strict vegetarian
+But with the over-population and inflation and starvation
+And the crazy politicians
+I don’t feel safe in this world no more
+I don’t want to die in a nuclear war
+I want to sail away to a distant shore and make like an ape man
+I’m an ape man, I’m an ape ape man
+I’m an ape man I’m a King Kong man I’m ape ape man
+I’m an ape man
+‘Cos compared to the sun that sits in the sky
+Compared to the clouds as they roll by
+Compared to the bugs and the spiders and flies
+I am an ape man
+In man’s evolution he has created the cities and
+The motor traffic rumble, but give me half a chance
+And I’d be taking off my clothes and living in the jungle
+‘Cos the only time that I feel at ease
+Is swinging up and down in a coconut tree
+Oh what a life of luxury to be like an ape man
+I’m an ape, I’m an ape ape man, I’m an ape man
+I’m a King Kong man, I’m a voo-doo man
+I’m an ape man
+I look out my window, but I can’t see the sky
+‘Cos the air pollution is fogging up my eyes
+I want to get out of this city alive
+And make like an ape man
+Come and love me, be my ape man girl
+And we will be so happy in my ape man world
+I’m an ape man, I’m an ape ape man, I’m an ape man
+I’m a King Kong man, I’m a voo-doo man
+I’m an ape man
+I’ll be your Tarzan, you’ll be my Jane
+I’ll keep you warm and you’ll keep me sane
+And we’ll sit in the trees and eat bananas all day
+Just like an ape man
+I’m an ape man, I’m an ape ape man, I’m an ape man
+I’m a King Kong man, I’m a voo-doo man
+I’m an ape man.
+I don’t feel safe in this world no more
+I don’t want to die in a nuclear war
+I want to sail away to a distant shore
+And make like an ape man.
+The Kinks performing Apeman on British TV in 1970.
+

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html new file mode 100644 index 0000000..676d8cf --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html @@ -0,0 +1,785 @@ + + + + + + + + + +300. EPISODE 300 (PART 1) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

300. EPISODE 300 (PART 1)

+ +
+ +
+

Hi everyone, this is it – the 300th episode of the podcast. This is a landmark episode. I’ve been doing this podcast now for 6.5 years. If you value my work and if you feel like I’ve helped you or at least entertained you with these free podcast episodes, then please consider supporting me and my podcast by giving me a donation. It’s very easy to do – just find one of the yellow “donate” buttons on my website. It’s all done through PayPal which is probably the world’s most popular online payment method. You can choose any amount you think my podcast is worth – it’s completely up to you. Also, there’s no obligation to do it at all if you don’t feel like it. But if you do contribute a donation, that’s going to help me continue this podcast and help me to record another 300 episodes in the future, and it is probably the most sincere way for you to say thanks for the episodes! Now let’s get started!
+
+Small Donate Button[DOWNLOAD]
+It’s here – 300 episodes of Luke’s English Podcast.

+

In this episode I’m just going to mess around a bit, talk about some stuff that comes into my head and generally enjoy the moment of having recorded my 300th episode.

+

I’m going to talk a little bit about the significance of the number 300 in history, because obviously this is a deeply significant moment which no doubt resonates through time, across the ages, as the stars align and the universe is united in one moment of peace and tranquility. So, we’ll do that, which should be nice.

+

We will also be taking a little trip down memory lane as we remember some of the moments and some of the people I’ve spoken to in previous episodes of the podcast, over the 6.5 years I’ve been doing this. I’ve received a few voice messages from some special guests and I’m going to play them to you in this episode.

+

Finally we’ll hear some messages and impressions of me from some of my listeners.

+

300 episodes in 6.5 years.
+48 episodes a year on average.
+That’s about 3.8 episodes per month.
+That’s about 7.5 minutes of me speaking to you every day.
+Imagine if I just called you every day for 7.5 minutes, for 6.5 years. That’s kind of what you’ve got with the whole back catalogue of LEP.

+

I was wondering whether I would do anything special for the 300th episode…

+

300The Instances of 300 Throughout History
+I’ve been thinking of all the famous instances of the number 300 in history.
+It’s just the movie 300 isn’t it? The 300 spartans who fought against the Persians. That’s it.
+It’s a perfect score in bowling. But that’s not particularly relevant for LEP.
+As far as I can tell by looking at historical reports, absolutely nothing happened in the year 300 AD.
+So, 300 is almost insignificant in history.

+

Maybe I will be the first to stamp the number 300 into the human collective consciousness.

+

The Significance of the Number 300
+In my search for significance behind the number 300 I’ve ended finding a page which relates to numerology, which is a superstitious belief in the divine and mystical power of numbers. I don’t really believe in that stuff. Personally I think it’s a load of old tosh if I’m honest, and the scientific community seems to agree as numerology is often labelled a pseudoscience as there’s no proper evidence of the psychic power of numbers.

+ + + +
+ + +
+ +

That being said, let’s have a look at the significance of the number 300 shall we?
+So according to sacredscribesangelnumbers.blogspot.fr/2011/08/angel-number-300.html here’s what the number 300 represents. I’ve got absolutely no idea of the source of this information. It could just be completely made up. Nevertheless, let’s see the significance of ‘300’. Does this resonate with you at all?

+

Number 300 is a combination of the vibrations and attributes of the numbers 3 and 0, with the number 0 appearing twice, amplifying and magnifying its own energies as well as those of the number 3.
+Number 3 relates to optimism and enthusiasm, communication and self-expression, inspiration and creativity, expansion and growth, manifesting and manifestation. Number 3 also relates to the Ascended Masters, who help you to focus on the Divine spark within yourself and others, and assist with manifesting your desires. They are helping you to find peace, clarity and love within.

+

Number 0 brings a message to do with developing one’s spiritual aspects and is considered to represent the beginning of a spiritual journey and highlights the uncertainties that may entail. It suggests that you listen to your intuition and higher-self as this is where you will find your answers. Number 0 carries the ‘God force’ and Universal Energies and amplifies the vibrations of the number 3, making 300 an important and powerful number.

+

Angel Number 300 is a signal to get your attention and make you take notice. It is time to listen to and follow your intuitive messages and angelic guidance and take appropriate action in the direction of your Divine life purpose. You are encouraged to communicate with the angels and the higher spiritual Beings to receive constant guidance and protection.

+

Angel Number 300 is a message from your angels and the Ascended Masters that they are with you, assisting and supporting you. The strong and clear connection you have with the spiritual realm allows for communication, assistance and guidance from the angels whenever you need it. Angel Number 300 encourages you to accept and develop your spiritual gifts and abilities and use them to enhance your own life as well as the lives of many others.

+

Use your natural creativity and communication skills to teach and enlighten others.

+

What It Means To Me
+Regardless of what the numerology says… Let me say a few things about having reached 300 episodes.
+I’m really pleased to have hit 300. The last 12 months have been particularly productive, with nearly 80 episodes recorded. That’s over 1.5 episodes per week. Which is about 12 minutes a day on average, probably more. 12 minutes of me speaking to you every day for the last 12 months. Not bad for your English I’d expect. I didn’t realise I’d been so productive, especially since this has been one of the busiest years of my life, with my wedding(s), honeymoon and work. Obviously, I absolutely love doing LEP and I think I’m somehow compelled to do it out of some sort of obsession.

+

Here are a few things that I love about it:
+– It’s a chance to be creative. Every episode is like a blank canvas and I can choose to fill it with whatever I want. The possibilities seem endless. As long as you find it useful and enjoyable and I’m satisfying some creative urge, then I’m doing the right thing.
+– It helps people around the world. After all the many many messages I’ve received, I’m convinced that regularly listening to my podcast can significantly help your English. I’ve been doing this for over 6.5 years and some people who have listened for that length of time, and who started out with pretty basic English can now contact me and communicate really well. They often say that LEP is what gave them an edge.
+– I get responses from my audience.
+– My audience are cool, lovely people. I guess like-minded people gravitate to my podcast and I’ve discovered that the people who contact me seem lovely, enthusiastic, intelligent and open-minded people. That’s awesome. I reckon if I got everyone in a big room together and we had a big party with food and music, everyone would get on really well and people would make friends, and fall in love, families would be created that would last for generations. It would be like an injection of clever, attractive and of course very literate people.
+– This is a platform for other projects. I really think it has only just begun and I’ve only just scraped the surface of what I’d like to achieve. I’ve said it before, but I intend to transfer a lot of the teaching skills, knowledge, experience and expertise I have from the classroom online in some way, to help people improve their English. The podcast will stay free, but I’m currently working on other ways to help you improve your English more directly.
+– I’m into the technology side of things these days, with nice microphones and stuff.
+– Podcasting is becoming more and more established and I’m proud to be part of that.
+– It’s good to be a bit independent and out of the school system.

+

A Journey Through Time – Messages from Former Guests on LEP
+Some messages from guests and other special appearances.
+Dad – 2. Easter, Family Arguments & Debates, Rickipedia, Marooned with my Music + more
+Mum – 3. The Beatles, Family Arguments & Debates, Marooned with my Music
+Howard – 5. Joaquin Phoenix, Men vs Women
+Ben – 9. Travelling in India
+Lee – 32. Doctor Who
+Andy – 45. Luke & Andy’s Crime Stories, Culture Shock: London
+Claudia – 48. Travelling 49. Stand up comedy
+Jim – 53. Discussing Grammar with my Brother, How to Swear, Going to the Pub, Luke’s English Braincast, Skype Chat, Dislocated Shoulder, Making Choons & more…
+Paco – 63. A German Comedian in London
+Oli – 76. How to use the London Underground, Luke vs Oliver, Criminal Law
+Paul – 104. The Brigton Episodes, The Drunk Episode, On a Boat
+Moz 104. The Brigton Episodes, The Drunk Episode, On a Boat
+Alex 104. The Brigton Episodes, The Drunk Episode, On a Boat
+Kate Fisher – 107. Messing Around with Accents and Voices
+Pierre G – 129. A Cup of Tea with Pierre Gaspard
+Seb – 130. A Cup of Tea with Sebastian Marx

+

End of Part 1!

+

Please leave your comments below, and do consider giving a donation. It would make my day. :) Small Donate Button
+300aa

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html new file mode 100644 index 0000000..6b00aba --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html @@ -0,0 +1,816 @@ + + + + + + + + + +300. EPISODE 300 (PART 2) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

300. EPISODE 300 (PART 2)

+ +
+ +
+

Welcome back to this landmark episode of the podcast. In this one we’re going to carry on listening to messages from guests I’ve featured on the podcast over the years, then we’ll hear messages from some extra-special celebrity fans, as well as some of imitations of me sent in by lepsters.
+
+Small Donate Button[DOWNLOAD]
+Messages from Former Guests (continued)
+Ben Fisher – 136. Cycling from London to Paris, Cycling from Coast to Coast
+Rob Hoehn – 143. A Cup of Tea with Robert Hoehn
+Paul Taylor – 158. A Cup of Christmas Tea with Paul Taylor, Catching Up with Paul & Amber, The Bad Haircut Situation, Fixed Expressions, Vocab Battle, The Bank Robbery.
+Amber – 161. She’s Having a Baby, Catching Up with Paul & Amber, The Bad Haircut Situation, Vocab Battle, The Bank Robbery.
+James Simpson – 165. Premier League Football
+Daniel Burt – 169. A Cup of Tea with Daniel Burt
+Lindsay – 168. Culture Shock
+Peter – 203. The Flatmate from Japan
+Noman – 210. A Cup of Tea with Noman Hosni
+Corneliu – 220. A Cup of Tea with Corneliu Dragomirescu
+Edgar – 223. YEP Competition Winners
+Mike – 243. A Life Changing Teaching Experience in Ghana
+Jason Levine, aka Fluency MC – 253. Rapping With Fluency MC
+Markus – 277. Markus Keeley/Northern Ireland
+AJ – 292. California Road Trip (Part 5)
+Jessica – 297. Using Humour in the IELTS Speaking Test

+

Messages from Special Celebrity Fans
+David Beckham
+Darth Vader
+The Queen
+Churchill
+Elvis
+Al Pacino
+Robert DeNiro
+Gandalf The Grey
+Miles Davis
+R2D2
+Jeff
+Gollum
+George Harrison
+Daniel Lazenby Smythe
+Chewbacca
+Michael Caine
+Roger Moore
+Obi Wan Kenobi
+Batman
+Liam Gallagher
+Clint Eastwood
+Paddy Considine
+Paul McCartney
+Yoda

+

Your impressions of me
+A few episodes ago I invited you to send me your impressions of me. Here are the results!
+Listen to the podcast to hear them, and my feedback.

+

Messages from listeners on Facebook
+Yury Morozov May the Force be with you, Luke.

+

Rajesh Vt Thank you so much , Master Luke for all the wonderful podcasts. You are and you will be a great teacher for all the learners of English around the world. I think many generations continue to reap the benefits of your hard work in the years to come. You are a unique teacher with full of kindness and passion for helping the learners and making them learn English effortlessly and joyfully. We thank your parents for giving this world an amazing teacher. May u continue this work for many more years with the support of LEPSTERS.

+

Freddy Luna Leon Uuuuuuur Ahhhrrr Uhrrrr Ahhhhrrr Arrghh- Chewbacca

+

Pyae Phyo Kyaw looking forward to hear it soon……keep on going teacher luke …………………….you`re a tremendous teacher for me ……………………………………………i always listening each and every one of your Podcast since you are uploaded in ……..may god bless you ……………………….

+

Vitaliy Hrechko I say it in Ukranian: “Vitayu!” (it means “Congratulations!” smile emoticon ) and add it in Russian “Pozdravlyayu!” smile emoticon

+

Vasile Şi Diana Vaganov Thanks Luke for the podcast. It’s unique and special for me. I am looking forward to the 3000 podcast. It’s only the beginning… smile emoticon

+

Yumiko Okada Congratulations for the 300th episode, Luke! My listening skill has been improved a lot since I took up your podcast. Thank you very much for that and keep going on for us English learners, until it gets 3000th! I really love your voice

+

Cristina Ricciardo Congratulations Luke, your Podcast makes the difference! Beware of imitations you out there smile emoticon

+

Jorge Henrique Congrats mate , I still do recall many of the old episodes as well , even your youtube videos asking people what are they thoughts about London, You have done so much towards us ,Incredible.

+

Jorge Henrique I wonder , How do all your people who have made episodes with you look like. For instance the guys who you have gone with To Brighton when you were performing your gigs, or that lady who made some episodes with you in the very begning , like in this Episode you talked about British expressions , and she talked about Paul mccarney that he had let himself go or something, hehe do you Recall this one Mr Thompson I wonder

+

Hien Nguyen Hi Luke. I am very happy to welcome episode 300. I recall the first time I have heard your voice, I didn’t understand even one word but I fancy the rhythm of your podcasts. Hope we can keep listening more and more your podcasts in the future and be one of your guests. Many thanks for what you have done, Luke. Congrats

+

Ivan Korjavin Message:
+It’s Luke and there will be 300 more podcats soon.

+

Daulet Kunadilov Thank you very much teacher Luke for your an uniqiue podcasts!!!!!!!!!!

+

Aritz Jauregi Oh, 300 episodes!! I still can´t believe what are you doing for us Luke! I think we all should give you a donation the day you upload the 300th episode. That´s my message to all the listeners. And I wonder when I´m going to have the chance to come across with you here in London and get you a beer! tongue emoticon

+

مختار طلعت Hi Luke,
+I am Mokhtar from Egypt. After this large number of episodes, did you achieve one of your goals, or do you want to move to another level in your career?. What are the principles of a happy marriage as you are a husband now?

+

Yuki Kozakai Dear Luke!
+‘m Yuki from Japan. Congratulation for the 300 episodes on Luke’s English podcast. Before listening to your podcast, I have wanted to study abroad to the US. However, your brilliant accent has changed my life. I am actually studying at Keele University in England now because I fell in love with British accent and British culture that you have mentioned in your podcast. Your podcast is very informative, and your podcast is the best one in the entire world smile emoticon Thank you very much!
+Hi from Keele Uni smile emoticon From Yuki

+

Mollie Tai 300 ! 300 ! 300 ! A BIG Milestone ! LEP IS KING !

+ + + +
+ + +
+ +

Francesco Paolo Castiglione People of the world, surrender to the podcasting power of luke’s podcast

+

Crampo Crampo The best thing is that every time i listen to your new podcast it s like having a chat with an old friend!

+

Luke’s English Podcast I’m not that old!

+

Ana Lupan Hi Luke!you are the coolest podcaster on our planet and perhaps in the whole univers :)you are doing great job for us,your lepsters:)thanks a lot!

+

Petra Dvořáková I love Luke and Luke’s English podcast! Petra from the Czech Republic.

+

Kwan Kawasemi Luke’s English Podcast is my daily dose of joy. Without you, I can’t imagine how boring my life would be. Thank you teacher Luke. smile emoticon – paquan

+

Antoinette Santamaria Give thanks, men! To King LukeThompson, and the brave 300! To victory! smile emoticon

+

Francesco Allen Gaeta Just start randomly swearing out loud!

+

Mao Tsukeyanagi Hi Luke! I just want to say thank you for everything you’ve done for us and congratulations on your amazing podcast! I really like your style of podcasting:unscripted and rambling on…it’s actually a lot of fun to listen to you getting sidetracked.
+Mao from Japan:)

+

Sergio Téllez I want to say Thank you!! for share with us all of your talent. I discovered this podcast first on you tube, with your videos about ‘what’s London really like?’ And the first episode I heard was ‘sick in Japan’ which is also my favorite. Your podcast is the best!!! it’s really ace!! thank you again.

+

Dentudix Estalrich The sound of your voice for me is like a good wine and a great meal with a good friend . Thank you so much for your company, it’s been 1 year since I’ve been listening to your podcast and everyday it’s better. Great job.XoXo

+

René Krsnadasa I can’t get enough of your podcast… Is a bit like Street Fighter 4 for you, do you remember? Hahaha. Have a nice day, mate.

+

Juan Andrés Congratulations and thankyou, Luke! Your podcast is all and more of what I expected to get. You diserve being well paid for doing it. Big hug!

+

Eje Carlos Navarro Congratulations! Thank you for sharing your knowledge with us. It is always a pleasure listening to your new stories! One of my favourite features is the length of the episodes because it fits perfectly with my running time!
+Congratulation for the 300 episodes on Luke’s English podcast! Saludos desde Barcelona!

+

Fatoum Azri <3 ur podcasts

+

Yaron Aharonov My message to the world is that it doesn’t matter what is your first religion, you must acquire also “Lepotheism” as your second religion.

+

Christian Paga Hey Mr. Puke…erm Luck…erm Luke ;) Wow, 300 episodes!!! That’s a flippin’ lot of episodes! Thank you so much for all your efforts, your dedication, and for teaching us all that important stuff in your own special way. In a perfect world, you should be able to make a living from podcasting – but trust me, as long as you keep up the great work, payday will come. Stay ninja, mate *some random ninja sounds*

+

Venkatesh Venky Congratulations, master Luke. We love you and your podcasts so much. We wish you all the good luck, prosperity and joy. Your podcasts changed my English a lot and i thank you from the bottom of my heart for that. May you continue this good work for many more years to help learners like me. Once again , thank you so much for all the special podcasts you have made.

+

Hideki Kanazawa Hello, Luke. Congratulations for 300th episodes! Your podcast is very very interesting and fun, I love it. I was lucky to find your podcast.
+Thank you very much for this wonderful podcast. Looking forward to listen 400th episodes!

+

Thank you to everyone for listening, commenting on the podcast and sharing these episodes. I have the best audience ever.

+

If you feel like donating, you can do it by clicking this little button. :) Small Donate Button
+300bb

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html new file mode 100644 index 0000000..f39ad8b --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html @@ -0,0 +1,738 @@ + + + + + + + + + +370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis)

+ +
+ +
+

Today on the podcast I’m talking to Rob Ager from Liverpool, who is probably best known for his film analysis videos on YouTube in which he discusses classic Hollywood thrillers, sci-fi and action movies in quite astonishing levels of detail, often focusing on deep psychological and political themes and hidden messages that most viewers probably wouldn’t even notice. His videos are carefully constructed documentaries, made for educational purposes and all of them feature a voice-over commentary by Rob in which he analyses the film and gives his observations.
+
+Small Donate Button[DOWNLOAD]

+

Click here to visit Rob Ager’s website collatedlearning.com

+

I think I first came across Rob’s work on YouTube about 5 or 6 years ago. Sometimes I start watching YouTube and I get sucked into a kind of YouTube worm hole. That’s where you start watching one video, and that leads you to watch another one and then another one and eventually you find yourself watching something really fascinating and unexpected and that you wouldn’t normally have come across. I think that’s what happened with Rob’s videos. I think I first came across a short documentary he made about a horror movie called The Thing by John Carpenter, which is one of my favourite films. It’s really scary, tense and well directed, and it has a terrifying monster in it. Also it has a complicated story line which creates an eerie sense of paranoia that invites the viewer to speculate on who is or who isn’t a monster. It was really interesting to listen to Rob talking about The Thing in so much detail and it made me think about the movie in ways that I hadn’t considered before.

+

Then after that I kept noticing other videos by Rob and I would always watch them with interest. He has videos about The Matrix, Star Wars, The Shining, Alien and more.

+

Sometimes I find his comments to be a bit too specific, like he is perhaps over-analysing the films, but then again I think this is what’s great about movies – that everyone can interpret them in any way they want – and that a film might mean one thing to you, but mean a completely different thing to someone else. Even the director of the film might have a very specific message in the movie, that most of us don’t even notice. I think most modern film makers understand these ideas and they often leave their movies open to interpretation. Think, for example about the ending of Inception starring Leonardo DiCaprio – what does it really mean? We’re supposed to imagine and discuss our own interpretations of it, and I think it’s one of the strengths of the film and one of the reasons it is so popular. Everyone can leave the movie with their own theory on what it was about and what had happened at the end. Rob Ager takes this principle – that there are multiple readings of a movie – and really runs with it in his documentaries, suggesting that many of these great films that we love could in fact be about political events in the real world, our deep desires and psychological motivations or even about hidden power structures.

+

Another interesting thing for me is that Rob comes from Liverpool. He’s a scouser (that’s the word for people who come from Liverpool) and he speaks with a scouse accent, which really reminds me of the people I used to meet, talk to and work with when I lived in Liverpool years ago. The Liverpool accent is really distinctive, and I always want to feature different British accents on this podcast, so on this one you’ve got the chance to get used to listening to a scouse accent, or Liverpool accent.

+

Also, I think Liverpool is a fascinating city and not enough people know about it. Most people know The Beatles or Liverpool and Everton football clubs, but there’s more to Liverpool than that. I’m hoping that Rob will tell me a few things about what it’s really like to live and grow up in this important English city.

+

His website – CollativeLearning.com reveals all sorts of interesting things – like that fact that Rob is a filmmaker himself and he is very prolific with his analysis videos. He has loads of documentaries which you can download from the website. What becomes clear after reading and watching his work is that Rob is a very observant and articulate person with a great interest in film, but he is also knowledgeable about a wide range of academic theories and he incorporates ideas from psychology, sociology and philosophy in his film analysis. All of that reminds me a lot of the things I read and wrote about while doing my Media & Cultural Studies degree at university in Liverpool. What’s also notable about Rob though is that he has received no formal academic education or training in all of these subjects – he’s completely self-educated.

+ + + +
+ + +
+ +

I’ve never spoken to Rob before, and I’m recording this introduction before our interview, which is due to start in just a few moments. I’ve got no idea how the conversation will go or what directions our conversation will take but I really hope it’s an insightful and engaging listening experience and that Rob and I get on with each other. I suggest that you listen out for differences between my standard Southern British RP accent and Rob’s accent, and let’s see what kind of vocabulary emerges from our talk.

+

Alright, it’s time to speak to Rob now. So, here we go.

+

*Conversations starts (after I remembered to press ‘record’ on my device)*

+

Links & Videos

+

Rob’s website www.collativelearning.com

+

Some interesting videos from Rob’s YouTube channel

+

+

+

10498412_657057634389359_4019296035620832718_o

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html new file mode 100644 index 0000000..c9af998 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html @@ -0,0 +1,589 @@ + + + + + + + + + +LEP on ZEP – My recent interview on Zdenek’s English Podcast | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

LEP on ZEP – My recent interview on Zdenek’s English Podcast

+ +
+ +
+

Hello email subscribers and website users! This is not an episode of LEP but keep reading because I have 5 cool things to share with you (below).

+

In this post you will find 5 episodes of a podcast. It’s not my podcast but I am featured in the episodes.

+

It’s a 5-part series of interviews between English teacher Zdenek Lukas and me on his podcast, “Zdenek’s English Podcast”, including 2 episodes of language analysis. You’ll hear lots of conversation between us about teaching, learning and behind-the-scenes information about Luke’s English Podcast. Also in the language analysis episodes Zdenek will help you pick up 50 features of English grammar, vocabulary and pronunciation from the interview.

+

You can listen to and download the episodes below.

+

Part 1

+

We discuss our experiences of taking the Cambridge DELTA qualification (it’s seriously challenging!) and then we try to break the commonly-believed stereotype of a native speaker teacher of English being superior to a non-native one.

+

+

[DOWNLOAD PART 1]

+

Part 2

+

In part 2 we talk about each other’s podcasts and I give some behind the scenes information about some popular episodes of LEP, including some stories about the episodes Sick in Japan, Travelling in Indonesia and California Road Trip. At the end, we also talk about our experiences of teaching English for specific purposes, namely business English and English for engineering.

+

+

[DOWNLOAD PART 2]

+

Part 3

+

In this part you can hear us talk about what we both like teaching the most in classrooms, some of my favourite teaching techniques, what it was like recording Pink Gorilla Story 1 & 2, and also what episodes I enjoy doing the most on the podcast. Also, you can find out more about the secret of Paul Taylor’s success and what it would take to do a live LEP meet-up with listeners.

+

+

[DOWNLOAD PART 3]

+

Part 4 – Language analysis

+

Zdenek picks out 25 features of grammar, vocabulary and pronunciation for analysis. He applies his knowledge of linguistic features of English to clarify meaning, highlight usefulness, correct some of his own errors and help you to avoid common mistakes.

+

+ + + +
+ + +
+ +

[DOWNLOAD PART 4]

+

Part 5 – Language analysis

+

Zdenek picks out 25 more features of grammar, vocabulary and pronunciation for analysis and gives them the teacher treatment.

+

+

[DOWNLOAD PART 5]

+

About Zdenek Lukas…

+

I’m really impressed by what Zdenek is achieving with his English as a second language.

+

He’s from Czech Republic and he has learned English as a second language in adulthood. He’s now a teacher of English, just like me and he does his own podcast, just like me.

+

He has a masters degree in English language teaching. He’s got a CELTA and DELTA (pending) in English teaching to adults. He’s really well qualified.

+

Also, he’s been doing Zdenek’s English Podcast for years and it’s still going. Admittedly he says the podcast is influenced by my podcast, and I’m ok with that. It’s his way of pushing his English and it seems to be working for him.

+

You’ll hear in our interview that Zdenek has just passed a significant part of his DELTA qualification with a really good grade. That is not easy to do. You need to be a good teacher to get a good result in your DELTA and you really need to know about grammar and linguistics.

+

So, don’t underestimate Zdenek. He’s achieved a hell of a lot, just like many of you have also achieved a lot in your language learning. Sometimes it’s worth taking a step back and realising how much you’ve achieved.

+

I was very happy to be interviewed by him and I really hope you listen to the episodes, and in fact check out his other episodes too. A lot of them contain interviews with other interesting people, many of them English people he knows. Other episodes cover Zdenek’s personal journey with English and also you can hear him interacting with his students too.

+

You’ll find links to Zdenek’s English Podcast here on this page. www.audioboom.com/channel/zdeneks-english-podcast

+

Zdenek has an FB group where he communicates with his listeners. Here’s the link www.facebook.com/groups/zdeneksenglishpodcast/

+

But you can also leave comments here and I’m sure that Zdenek will read them at some point.

+

Cheers,

+

Luke

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html new file mode 100644 index 0000000..cdfa13e --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html @@ -0,0 +1,560 @@ + + + + + + + + + +I was invited onto the “English Across The Pond” Podcast | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

I was invited onto the “English Across The Pond” Podcast

+ +
+ +
+

Hi podcast people,

+

I was recently invited to appear on another podcast for learners of English, called English Across The Pond presented by Dan (UK) and Jennifer (USA).

+

You can listen to the episode below and check out their website at www.englishacrossthepond.com

+ + + + +
+ + +
+ +

Dan and Jen produce quite a lot of extra material to help you learn English from their episodes. Check out this link where you can get a vocabulary list, comprehension questions or just download the full episode guide from their website.

+

Dan and Jen are really friendly and both have lots of English teaching experience. You might enjoy listening to their podcast too.

+

Cheers!

+

Luke

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html new file mode 100644 index 0000000..654df03 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html @@ -0,0 +1,613 @@ + + + + + + + + + +[Website only] A History of British Pop – A Musical Tour through James’ Vinyl Collection | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

[Website only] A History of British Pop – A Musical Tour through James’ Vinyl Collection

+ +
+ +
+


+

+

A History of British Pop – a musical tour through James’ vinyl collection

+

This is a LONG musical mix using James’ vinyl record collection. Think of it as Jim & Luke’s Rock Radio Show with a history of British pop.

+

Website only – no download available, but you can listen using the Mixcloud app.

+

We decided to do this mix (with comments) featuring key moments in British pop and rock music only using the records in James’ vinyl collection, starting in 1961 and ending in the mid-nineties.

+ + + +
+ + +
+ +

Please enjoy this musical journey through British history, with some commentary by James and me.

+

Track list

+

Part 1

+
    +
  1. The Shadows – The Savage
  2. +
  3. The Beatles – Twist & Shout
  4. +
  5. The Kinks – You really got me
  6. +
  7. The Who – Pictures of Lily
  8. +
  9. The Rolling Stones – Get offa my cloud
  10. +
  11. The Beatles – I am the Walrus
  12. +
  13. Cream – Strange brew
  14. +
  15. Procul Harum – A whiter shade of pale
  16. +
  17. The Beatles – Come together
  18. +
  19. The Kinks – Lola
  20. +
  21. Black Sabbath – Paranoid
  22. +
  23. Status Quo – Ride my paper plane
  24. +
  25. Led Zeppelin – Rock & Roll
  26. +
  27. The Rolling Stones – Tumbling dice
  28. +
  29. T Rex – Children of the revolution
  30. +
  31. Roxy Music – Virginia plain
  32. +
  33. David Bowie – Fame
  34. +
  35. The Who – Success story
  36. +
  37. The Sex Pistols – Pretty vacant
  38. +
  39. Ian Dury & The Blockheads – Sex & Drugs & Rock n Roll
  40. +
  41. The Buzzcocks – Lipstick
  42. +
  43. Dr Feelgood – ?
  44. +
  45. The Police – So Lonely
  46. +
  47. Madness – My Girl
  48. +
  49. Joy Division – Transmission
  50. +
+

Part 2

+
    +
  1. The Specials – Ghost Town
  2. +
  3. Depeche Mode – I just can’t get enough
  4. +
  5. Fun Boy Three (feat. Bananarama) – It ain’t what you do (it’s the way that you do it)
  6. +
  7. Musical Youth – Pass the dutchie
  8. +
  9. The Smiths – How soon is now?
  10. +
  11. Pet Shop Boys – West end girls
  12. +
  13. The Stranglers – Golden brown
  14. +
  15. Motorhead – Iron Fist
  16. +
  17. David Bowie – Let’s Dance
  18. +
  19. The Cure – Close to you
  20. +
  21. The Jesus & Mary Chain – April Skies
  22. +
  23. The Stone Roses – Elephant stone
  24. +
  25. The Happy Mondays – Hallelujah
  26. +
  27. A Guy Called Gerald – Voodoo ray
  28. +
  29. 808 State – Pacific
  30. +
  31. Orbital – Chime
  32. +
  33. Primal Scream – Don’t fight it, feel it
  34. +
  35. Saint Etienne – Join our club
  36. +
  37. Manic Street Preachers – Motorcycle emptiness
  38. +
  39. Oasis – Supersonic
  40. +
  41. The Prodigy – No good start the dance
  42. +
+

There are so many other tracks we wanted to play but couldn’t because there wasn’t enough time. Maybe one day we can do this again! Leave your comments below to tell us which tunes are your favourites! Thanks for listening. :)

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git "a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-\360\237\207\251\360\237\207\252-wisbolep-run.html" "b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-\360\237\207\251\360\237\207\252-wisbolep-run.html" new file mode 100644 index 0000000..e340e4e --- /dev/null +++ "b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-\360\237\207\251\360\237\207\252-wisbolep-run.html" @@ -0,0 +1,810 @@ + + + + + + + + + +714. Robin from Hamburg 🇩🇪 (WISBOLEP Runner-Up) | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

714. Robin from Hamburg 🇩🇪 (WISBOLEP Runner-Up)

+ +
+ +
+ +

Talking to another runner-up from last year’s listener competition. Robin from Hamburg had a big setback in his learning of English, but worked hard to overcome it. We talk about his English learning trajectory, and ramble about German language & culture, his podcast for learners of German, podcasting microphones and then Robin teaches me some German words which are difficult to pronounce.

+ + + +

+ + + +

Small Donate Button

[DOWNLOAD]

+ + + +

Introduction Transcript

+ + + +

Hello everybody, welcome back to the podcast. I hope you are all doing alright today, wherever you are and whatever you are doing as you listen to this.

+ + + +

Here is a new episode, and we are returning to the WISBOLEP series with this one – talking to winners of the competition I did at the end of last year in which listeners chose some guests from LEPland to be featured in episodes of this podcast.

+ + + +

LEPland – that’s Luke’s English Podcast land, you see, L E P land – LEPland. Not LAPland, no, that’s Lapland – a real place, somewhere in the north of Finland. But no, I’m not talking about Lapland. I say this because sometimes people write to me and they say “Another listener here from Lapland” really? Are you from Lapland? Or do you mean LEPland. Maybe you are from Lapland, I don’t know. There are people there. If you are in Lapland, then hello to you too. Maybe you are Santa Claus (because Santa comes from Lapland) Maybe Father Christmas listens to this podcast  during the year, just relaxing, taking a break. Anyway, if you are Father Chrismtas then welcome, “welcome” to everyone. But anyway, where was I? So… The competition, last year, Listeners chose some guests from LEPland to be featured in episodes of this podcast.

+ + + +

This episode now is the 4th in that series and the spirit of this whole competition is to let some LEPsters talk on the podcast so we can learn some things from them including insights into how they learned English, perhaps some things about the countries they come from and whatever else they can talk to us about. 

+ + + +

This time it is the turn of Robin who comes from Hamburg in Germany.

+ + + +

Robin came joint 3rd in the competition with William from France. So William and Robin both received exactly the same number of votes and in fact their stories are not dissimilar (which is another way of saying that their stories are quite similar). Yes, their stories are not dissimilar in the sense that they both first learned English at school in their neighbouring countries, and then both chose to pursue English in higher education, both decided to become teachers of English and both spent time as teaching assistants in English schools in the South East of England, helping English schoolkids and students learn French or German in the case of Robin. So, funnily enough, Robin and William both have many things in common, including the fact that they both got exactly the same number of votes, so joint 3rd position, but anyway, this is Robin.

+ + + +

And yes, Robin is also an English teacher, just like the other WISBOLEP winners that we have had so far.

+ + + +

Now I would like to address something at this point and that is the fact that all the winners of this competition so far have been English teachers. Obviously they’ve been, let’s say, non-native speakers from different countries, but yes, the four people I’ve spoken to so far – they have all been English teachers, and I get the impression from reading one or two comments that some people might think it’s a bit unfair, for some reason, that the winners all seem to be English teachers, right? 

+ + + +

Here’s the rationale, or the logic behind this point of view, as far as I can tell, and actually I should also say, the vast majority of comments on these episodes so far have been really positive. People have loved listening to the guests that we’ve had so far and I think people have found them to be interesting and inspiring and thought-provoking and so on. But anyway, I do get the sense that there is maybe this feeling of “All the winners are English teachers. What’s going on?” and so here’s the rationale, or the logic behind this point of view, as far as I can tell. Something like this…

+ + + +

“Hmm, so you can only win this competition if you’re an English teacher. What about the rest of us who don’t have that advantage?”

+ + + +

This sort of comment seems to suggest that non-native speakers of English who are English teachers have improved their level of English as a result of being teachers, that their English improved because they became teachers or as a consequence of being English teachers, and so being an English teacher gave them an unfair advantage in this competition. 

+ + + +

But I think it’s probably the other way round, isn’t it? Surely they reached a proficient level of English before they became teachers, and then became teachers as a consequence of having a good enough level of English. You can’t qualify as a teacher without having a fairly decent level of English first, can you? 

+ + + +

So, I think their progress and achievements in English proficiency are still thanks to their own merit just like anyone else who has got good at English, and so I think this still counts. 

+ + + +

Sure, perhaps their teaching work has meant that they’ve had to do more language study than most people, and that they get to use English in their work on a fairly regular basis. That’s true. So the job has probably tweaked their English that bit further than many other people, but again, I’m sure the majority of their English progress was made before becoming English teachers.

+ + + +

So, I just wanted to point that out in case some people listening felt there was something amiss about the results of the competition. Personally, I think it’s fine and you probably think so too, right? 

+ + + +

But bear with me as I say just one or two other things about this.

+ + + +

Of course there are loads of people who achieve great things in English and who don’t choose to become teachers, and that’s great too. I really don’t mind what people do, as long as they have something to offer to my audience, and I suppose ultimately this is why listeners voted for these people in this competition, because they felt that they would have interesting things to say on the podcast, and probably some insights into improving your English, and I think those things are definitely true. I feel that the 3 interviews we’ve had so far have been very insightful and interesting, and I think that this also applies to the other interviews that you haven’t heard yet. There are three more interviews to listen to. There’s Robin, Michal and Bahar as well.

+ + + +

And I’m sure that even now some people are going “This is unnecessary Luke. You don’t need to justify yourself”. Ok I won’t (as I whack the microphone). 

+ + + +

Anyway, so, after this one with Robin, the next one will be Michal from Poland and he has achieved a decent level of English and he’s not an English teacher. Not yet anyway! I don’t know what he will choose to do in the future, but so far he has not qualified as a teacher. 

+ + + +

Anyway, I don’t think it matters that much in the grand scheme of things, even though I have just devoted a number of minutes to talking about it. I think ultimately it doesn’t really matter that much, does it? Essentially we are listening to LEPsters who other LEPsters wanted to hear on this podcast and you know what – I am really enjoying these episodes, I think that the LEPsters who voted in the competition made some really good choices, and this series has been very well-received overall, which is great.

+ + + +

And this brings us to our 4th WISBOLEP guest – Robin from Hamburg in Germany (just in case you weren’t sure where Hamburg was. That’s right, it’s in Germany) so here we go. 

+ + + +

So I spoke to a few weeks ago. Robin is someone who learned English at school like most people, and liked it, and then chose to pursue his English studies and broaden his English skills while still living in Germany. There were challenges and setbacks, as you will hear, but ultimately he managed to immerse himself in the language and get his English to a good enough level to be able to train to become a teacher of the language in Germany. Later on he went to England to get some work experience as a teaching assistant in German classes at a posh school in the South East.

+ + + +

Along the way Robin also chose to start a podcast for learners of German. So Robin is a podcaster too, just like me. Robin’s podcast is called Auf Deutsch Gesagt, which I hope I’m pronouncing correctly. Speakers of German, indeed Robin, in fact, you could get in the comments section and tell me if I’ve pronounced that correctly. Auf Deutsch Gesagt!

+ + + +

So if you are learning German and you want a podcast that is similar to mine but in German, you could listen to Robin’s podcast Auf Deutsch Gesagt! Which translates as “In plain German” or “In plain language” which I guess means that the German that you can hear in his episodes is the sort of natural German that people use on a daily basis. As Robin has said, he was quite inspired by my approach to LEP, and so I guess Auf Deutsch Gesagt is along similar lines. So that’s Robin’s podcast for people learning German. It’s on Spotify and is available where you normally get your podcasts. 

+ + + + + + +
+ + +
+ +

There are links for his podcast on the page for this episode too. 

+ + + +

Auf Deutsch Gesagt! (Robin’s German Podcast)

+ + + +

Podcast page aufdeutschgesagt.libsyn.com/ 

+ + + +

Podcast links plinkhq.com/i/1455018378?to=page 

+ + + +

So this conversation ended up being a bit longer than some of the other interviews with WISBOLEP winners, but that’s partly because we found that there were quite a lot of things for us to talk about including Robin’s learning of English after being told by one of his university teachers that he should just give up because he wasn’t good enough, his experience as a teaching assistant at a school in England, some comparisons between English and German language and culture, some slightly geeky stuff about the recording setups and microphones that we use for our podcasts, and then finally we thought it could be fun for Robin to try and teach me a bit of German, so you will hear me struggling to pronounce a few words in German near the end of the conversation, which should give you a bit of a laugh.

+ + + +

So that’s it then for this introduction. I will chat to you again briefly on the other side of this conversation but let’s now meet WISBOLEP runner up Robin from Hamburg, and here we go.

+ + + +
+ + + +

Ending Transcript

+ + + +

So that was Robin from Hamburg, teaching me a bit of German there, which was a bit of fun wasn’t it? I think it was. I hope you enjoyed it, listening to me struggle with another language for a change. 

+ + + +

Again, if you’re learning German and you’re looking for a podcast to listen to, why not check out Auf Deutsch gesagt! (Spell it) So, again, you can just check the page for this episode on my website and you’ll see all of this stuff written. My introduction and this ending part here. It’s all written and you’ll find links to Auf Deutsch gesagt! If you want to listen to it. 

+ + + +

Auf Deutsch Gesagt! (Robin’s German Podcast)

+ + + +

Podcast page aufdeutschgesagt.libsyn.com/ 

+ + + +

Podcast links plinkhq.com/i/1455018378?to=page 

+ + + +

It is available wherever you get your podcasts, and you will find links on the website to help you find it. (I’ve just said that!) 

+ + + +

As you heard Robin say there, his approach is pretty similar to mine so it might be what you are looking for if you are learning German.

+ + + +

Also, I think it was very interesting to note the trajectory of Robin’s English learning. 

+ + + +

Ooh “Trajectory” – there’s a nice word. (spell it)

+ + + +

Trajectory

+ + + +

Let me just talk about it a little bit. Firstly, it refers to the path that an object takes as it flies through the air. Now we’re talking about the trajectory of Robin’s English journey, but I think the first use or meaning of the word trajectory normally refers to objects flying through the air, and the path that they take as they fly through the air. 

+ + + +

For example the trajectory of a plane from take off to landing. Imagine a line going up from the ground soaring into the air, over distance, then going back down to the ground. Trajectory – it doesn’t always mean it goes down, up and then back down again. It could just be from down to up.  

+ + + +

Also you’ve got the trajectory of a rocket, or the trajectory of a golf ball flying from the ground, up into the air, over the grass and maybe landing on the green, hopefully, if you’re a golfer. The path that an object takes as it moves through the air. That’s the trajectory. 

+ + + +

The second use of the word is metaphorical or idiomatic and it’s used to describe the movement or path of other things, like for example someone’s career trajectory, or the growth trajectory of a company, upward trajectory or downward trajectory. Imagine a line showing the movement of something making a curved line going up and over. It could be a line on a graph. 

+ + + +

So, it is interesting to follow the trajectory of Robin’s English learning, especially that moment when he was told he wasn’t good enough to pursue his studies, and then he kind of doubled down on his English, and the results kind of spoke for themselves. 

+ + + +

Arguably, being told “Oh you’re not good enough, I think you should give up” that is a very damaging thing to say to a learner of English, you would have thought, although not in the case of Robin, because this is the sort of kick up the bum that he needed. This is the kick up the arse that Robin needed apparently. I don’t know, I guess it could go either way. For some people, being told that would just destroy your confidence and you’d never achieve anything as a language learner after being told that. Or it might give you a wake up call and if you’re determined, well, this is the slap in the face that I needed – metaphorical slap in the face that I needed to kind of actually get me going.

+ + + +

Anyway, in the case of Robin it was the thing that kind of made him grasp the challenge. 

+ + + +

So, thankfully Robin took it as a challenge and seriously started to immerse himself in English all the time, and probably did self study from grammar books and other things but basically he just put a lot of time and effort into his English and it paid off, and just listen to him now. 

+ + + +

It seemed to make a lot of difference, right? Then he was able to qualify as a teacher and help other people with their English learning trajectory too, but the key thing is that he took the bull by the horns and took control of his learning himself [There’s a nice phrase! + some rambling about how you shouldn’t actually take a real bull by the horns because you’ll probably get gored in the stomach…] 

+ + + +

The thing is that Robin took the bull by the horns, metaphorically speaking, and took control of his learning himself, realising it was all down to him and he did it in his own way.

+ + + +

Again, I hope you agree that this has been quite inspiring – basically as a way to say, you can do it too if you put your mind to it and you put the time in. 

+ + + +

Again, I will echo my statements from the last of these episodes – I often tell you about the importance of motivation and the importance of doing certain types of practice, but also I just want to say, equally don’t worry about doing anything really. Don’t worry about it too much. Don’t feel bad if you’re not doing the things I often say. At the very least, just listen, enjoy listening, be happy, stay positive and enjoy spending time with English in any way that you like. This is probably the most important thing, that you have to maintain a good and positive feel-good relationship with the language, and when the time is right, you can take more control and really apply yourself by doing different kinds of practice, but don’t worry if you just like listening to English and that’s all you do. That’s fine. It’s all good. It’s all good in the hood.

+ + + +

But if you’re always looking for specific tips on ways to improve your English, if you want to take the bull by the horns and you want to improve your English in more applied ways including your pronunciation and your accent then pay attention to some things that Michal from Poland is going to say in the next WISBOLEP episode, which will arrive in a few weeks. Little sneak preview there of the episode with Michal from Poland.

+ + + +

And of course there’s the ongoing LEP Premium project which is designed to be a service that can help you make sure your English is on the right trajectory. Parts 3 & 4 of P29 are coming very soon – and they are going to cover more solid vocabulary, collocations, synonyms and phrases based on things my dad said in episode 704 of the podcast, with listen & repeat pronunciation exercises in part 2 as well. So if you want to hear that, access the PDFs for it and all the other premium content visit www.teacherluke.co.uk/premiuminfo&nbsp;

+ + + +

But in any case, I hope you enjoyed this episode and thanks again to Robin for his contribution. It was great to talk to him. It was really nice to listen to him and just hear about his story and so on. I apologise if I spoke too much during the conversation, but it was a conversation after all, and that’s fine isn’t it?

+ + + +

As ever, let us know your thoughts in response to this episode in the comments section for this episode, right? 

+ + + +

If you’re looking for the episode page where you can write your comments and also read transcripts for the introduction and ending of episodes like this, you will find the link in the description for this, wherever you are listening. [Luke rambles a bit about the Apple podcasts app] or just go to teacherluke.co.uk and then click EPISODES in the menu.

+ + + +

Well, it’s time to finish, isn’t it? It’s time to end.

+ + + +

Thank you for listening to my podcast again. Good luck with your English and I will speak to you soon, but now it’s just time to say bye bye bye bye bye bye bye.

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html new file mode 100644 index 0000000..8c55d27 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html @@ -0,0 +1,586 @@ + + + + + + + + + +113. Setting The World To Rights | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

113. Setting The World To Rights

+ +
+ +
+

Setting the world to rights: What does this expression mean? Listen to find out, and to hear a conversation in a pub with a friend & colleague of mine.
+
+Right-click here to download this episode.
+According to the Macmillan dictionary this phrase means “to have a conversation with someone in which you exchange opinions on a range of subjects, especially opinions on how to solve society’s problems”.

+ + + +
+ + +
+ +

That’s exactly what I did in this episode. Listen and you’ll hear me engaging in conversation with a colleague of mine named Eamon. We went to the pub for a quick pint and ended up setting the world to rights. Eamon is a very intelligent and interesting guy and I’m sure you’ll enjoy listening in on our conversation. I’ve decided it will help you immensely if you can read some of the phrases we use in this episode, and so I’ve written many of those things in a list below. You can use it to learn more vocabulary, understand the episode better, and generally become a more wonderful human being in the process. You’re welcome!

+

Vocabulary & Expressions
+Here’s a list of some of the expressions Eamon used in our conversation:
+1. “Eamon is Irish for Edmund” – <is ______ for…> means that this is an equivalent word in another language, e.g. “bonjour is French for hello”
+2. “and of course I was named after the first president of The Irish Republic”
+3. “he was a horrible man. He was nonetheless an iconographic figure” – nonetheless means ‘still’ or ‘nevertheless’, and ‘iconographic’ means being famous for symbolising something
+4. “I do become aware of a cultural distinction” – a ‘distinction’ means a ‘difference’
+5. “in rural parts of the country” – ‘rural’ means ‘of the countryside’
+6. “There might be listeners who get a bit tetchy about that” – ‘tetchy’ means ‘irritated and angry’
+7. “if you look at the history of these islands, we’re all intertwined” – ‘intertwined’ means ‘closely connected in complex ways’
+8. “we called them grants, and we didn’t have loans” – a ‘grant’ is some money which the government gives to students to help them study. The student does not have to pay the money back, unlike in the case of a ‘loan’.
+9. “English as a foreign language was beginning to boom” – to ‘boom’ means to have a good economic situation. The opposite is to ‘bust’ which means to have poor economic conditions.
+10. “my lifestyle was becoming increasingly dissolute” – ‘dissolute’ means to ‘indulge in pleasures like sex or drinking”
+11. “the workaholic culture” – a ‘workaholic’ is someone who is addicted to work, like the way an alcoholic is addicted to alcohol.
+12. “apart from the odd blip as a lawyer” – a ‘blip’ is a moment of inconsistency, for example in Eamon’s life he managed to avoid having a proper job except for the odd blip as a lawyer. This means for most of his time he wasn’t a lawyer then on some moments he worked as a lawyer.
+13. “Sorry that was a bit facetious” – ‘facetious’ means to make a joke about something which should be serious
+14. “I sometimes worry that maybe I’m short-changing my children” – to ‘short-change’ someone is to give them a bad deal or to not treat them fairly
+15. “I console myself” – to ‘console’ yourself means to make yourself feel better or to deal with bad news
+16. “London is a very urbane place” – ‘urbane’ means ‘sophisticated’ and ‘cultured’
+17. “I find Croations basically more inhibited” – ‘inhibited’ means ‘shy’ or unable to express themselves well
+18. “Croats have a bad reputation for being ill-mannered and surly” – ‘ill-mannered’ means ‘rude’, ‘manners’ means the way you behave in public, and ‘surly’ also means ‘rude’ or ‘bad tempered’
+19. “when it all kicked off” – to ‘kick off’ means to ‘start’
+20. “it was a manifestation of people who felt like they’d been left out of the enrichment process” – a ‘manifestation’ is a sign of something else. To be ‘left out’ means to be excluded.
+21. “…whose values had somehow curdled” – to ‘curdle’ is when liquid becomes solid (e.g. when milk becomes cheese)
+22. “we’re bombarded with advertising left, right and centre” – to be ‘bombarded’ means to be attacked by things coming at us (e.g. bombs). ‘Left, right and centre’ means from every direction.
+23. “I have very mixed feelings about those riots” – to have ‘mixed feelings’ means you can’t really decide because you have opinions on both sides
+24. “I don’t really know where I stand” – to ‘know where you stand” means to ‘know your opinion clearly’
+25. “the belief that the acquisition of things can make a difference to your life” – ‘acquisition’ means to ‘get’ something or to ‘own’ something
+26. “I was ready to clip their wings” – to ‘clip’ someone’s wings means to cut the wings of a bird so it can’t fly
+27. “to pull it off” – to ‘pull something off’ means to achieve something very difficult

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/fixtures/ep_htmls/2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html b/tests/fixtures/ep_htmls/2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html new file mode 100644 index 0000000..57df8d1 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html @@ -0,0 +1,569 @@ + + + + + + + + + +Episode 1 – Introduction | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + + +
+
+ +

Episode 1 – Introduction

+ +
+ +
+

The first episode of Luke’s English Podcast. Full transcript available below.

+

+

Download Episode   Small Donate Button

+

TRANSCRIPT
+Hello, and welcome to Luke’s English podcast – the podcast for learners of English. This is the very first podcast that I’ve done and it will be the first of many more podcasts that you will be able to download and listen to in the future, so because this is the first podcast, it’s a bit short, it’s shorter than the other ones will be and in this podcast basically I’m going to introduce myself to you so that you can get to know me a little bit and then I’m going to tell you about what is going to happen in other podcasts in the future.

+

Let’s see, first of all my name’s Luke – Luke Thompson. Now the name Luke can be a little bit difficult for learners of English to pronounce sometimes and I meet lots of people who can’t pronounce my name and they call me Look or maybe Luck, but it’s not Look or Luck, it’s Luke of course, and let’s see, I live in London. I work as an English teacher in an English language school in West London and I’ve been teaching English for about 8 years now. I first started teaching in Japan and I lived in Japan for two years in an area near Tokyo called Kanagawa Prefecture and I taught English there for two years and it was really great, I had a really good time. It was a very interesting experience for me and I’ve got lots of interesting stories to tell about my time in Japan. So, I taught there for two years and then I came back to London and I have been teaching English in London for about six years now. I’ve worked in a few different schools. I used to work in a school near Oxford Street and I worked in another school in Waterloo and now I work in a school which has two buildings, one in Holland park and the other one in Chiswick in West London and I enjoy my job very much because I get to meet lots of very interesting people, possibly people like you, people who need to learn English and they come to London. They come to my school, for example and it’s very interesting for me to meet these people from around the word and to introduce them to the English language and the English culture as well.

+

Let’s see, as well as being a teacher, an English teacher, I’m also interested in lots of other things. I love music, I’m a big music fan, for example I love the Beatles, of course, because I’m English and we all love the Beatles don’t we? So, I love the Beatles and I love lots of different kinds of music as well. I play music sometimes, I play the drums and I play the guitar. I’m not very good at the guitar to be honest I’m just trying to learn how to do that, but I’ve been playing drums for a long time now. I play in a band at the school and we play concerts sometimes and that’s really great fun. I’m also into lots of other things. I love movies and I like sport, like football of course, again because I’m English and we all love football, right? and I also like rock climbing too.

+ + + +
+ + +
+ +

So, that’s just a little bit of information about me and, OK, now I’m also interested in you, and your opinions and your stories and your questions as well, so if you have any questions for me, if there are stories that you’d like to tell me, you can email me. Now at the end of each podcast I will actually ask you a question and I really want this to be an interactive podcast, which means that you can email me your answers to the question that I will ask you at the end of the podcast and it will be a chance for you to tell me what you think about some of the things that we’ll be talking about. So if you want to email me you can write to this address, its: Luketeacher@hotmail.com and I’ll be very glad to hear from you.

+

You’re still listening to Luke’s English Podcast. If you’d like some more information visit teacherluke.podomatic.com.

+

Now, let me tell you about the podcast. Now obviously this is the fist podcast so it’s slightly different from podcasts in the future, but really what is so fantastic about this podcast is that the whole thing will be real, natural British English so that means that if you are interested in having a good listening experience, practising your listening but also finding something that will be interesting and entertaining and fun then this is the podcast for you. Like I said, it will all be totally natural British English, so the sort of English that I speak with my friends for example, the kind of real English that people in Britain speak all the time. I record the podcast here in my apartment in London. At the moment I’m sitting on my sofa and it’s a Saturday morning. So I record the podcast at home in my free time and a typical podcast will have three parts: the first part will be a little bit of conversation with me. So I might talk about something that’s happening at the moment. So possibly a news story or what’s been going on recently and I will also answer your questions and I will read out your comments that you send to me via the email address that I read out earlier on.

+

That’s the first part, the second part of the podcast will be a feature. So that means that it will be probably an interview with someone, so I might interview one of my friends or interview a member of my family and so you’ll be able to listen to a natural conversation between native speakers for example. It will be like you are spending time with some native English speakers. I know it’s difficult to find native English speakers to meet and talk to but if you listen to this podcast you’ll be able to listen to me talking to some of my friends or family, so again, a really good chance for you to listen to natural British English being spoken. So, like I said, the second part will be a feature, maybe an interview with someone. I might for example go into London and interview people on the street or I’ll interview people I meet in the pub, for example and we’ll talk about lots of interesting topics.
+Then the third part of the podcast I will look at some of the language that I’ve used in part one and part two and I’ll actually teach you some really useful vocabulary and really useful expressions, the kind of natural language that normal British people speak when they talk to each other.

+

So this podcast is a really good chance for you to try and push your level of English up and if you start using some of the vocabulary that you hear on this podcast you can really start to push your level up to an advanced level of English. Another good thing about the podcast is that you can download it from the internet. You can put it on to your ipod or your mp3 player and then you can listen to it anywhere you like, I mean, you can listen to this on the bus on the way to work, or on your way to school. You can listen to it maybe when you are in the gym doing your exercise. I mean you can listen to it anywhere you like, I mean, you can listen to it on the toilet for example or maybe when you’re having a bath! I suppose that might be a bit weird or a bit strange if you’re listening to me while you are having a bath or when you are on the toilet! but I mean I don’t really care, I don’t really care where you are or what you’re doing as long as you actually listening to the podcast, that’s the most important thing for me. Also you can listen to this anywhere in the world, so if you’ve come to London to study English – you might have been at my school, you might have been one of my students and if you come to London and then you go back to your country you can keep downloading and listening to this podcast from your country and it’s a really good chance to extend your British English learning experience. Now, there are lots of other podcasts that you can download from the internet, lots of learning English podcasts. If you go to iTunes, if you’ve got iTunes on your computer for example, if you go to the iTunes store and do a search for learning English podcasts you’ll find lots of different English language podcasts available, but in my opinion most of them are rubbish actually and I think that this will be probably better than all the others! Now I’m not being very modest there, but I think I’m just being confident, which is a good thing, but I’ve listened to a lot of other podcasts that you can find on the internet and first of all most of them seem to be American and they have American English – which is fine because American English is great and all that – but you might want to listen to British English, right? Or sort of London English which is what I can offer in this podcast. So also a lot of the podcasts that I’ve listened to seem to be very patronising, and by patronising I mean that they talk to you like you’re a bit stupid, or maybe like you’re a bit of a child so they might be something like:
+“Welcome to the American English podcast from podcasts.com. Today’s podcast is about dogs. Dogs are a kind of pet that you keep in your home or in your house…”,
+for example, right? Sort of, a bit slow, a bit boring and a bit patronising so I think that this podcast will be hopefully more interesting than that, not as patronising, not very boring hopefully, sort of natural and fun and you will actually want to listen to it for entertainment so it’s not like studying but more like just something that you listen to just because it’s interesting I hope so anyway.
+So, I think that’s it really, that’s the end of this first podcast. Don’t forget to listen to the second one and the third one because they will be more interesting than this because they’ll be things like interviews with people and other stuff like that.

+

So, I’d like to end this podcast with a question which I would like you to answer through the email address and the question is: What would you like me to talk about? so what would you like to hear me talk about on this podcast? so send me a question. It could be a question about perhaps Britain or British culture or about London or it could be a question about English – if you’ve got a question about English vocabulary or grammar I’m happy to answer your questions on the podcast. So, that’s the first question: what would you like me to talk about? And that’s it, that’s the end of the podcast. Don’t forget you can email me at: Luketeacher@hotmail.com. I’m very much looking forward to hearing from you in the future, so that’s it.. bye bye bye bye….

+ + + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + From 2779b33a49b397acb8c56e60e1d7c58b80bd03dc Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 17 Sep 2021 11:12:59 +0300 Subject: [PATCH 09/54] refactor(parser): :construction: Update two functions for parsing all links and getting text link by href --- src/lep_downloader/parser.py | 104 +++++++++++++++++++++++------------ 1 file changed, 68 insertions(+), 36 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 6de0cf7..a21fd99 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,9 +1,9 @@ """LEP module for parsing logic.""" import copy import re -from typing import List, Tuple +from typing import Any, List, Tuple -from bs4 import BeautifulSoup +from bs4 import BeautifulSoup, SoupStrainer import requests from lep_downloader import config as conf @@ -12,41 +12,35 @@ deleted_links = [] regex = conf.EPISODE_LINK_RE ep_pattern = re.compile(regex, re.IGNORECASE) +s = requests.Session() -def get_lep_archive_page(archive_url: str) -> str: +def get_web_page_html_text(archive_url: str, session: requests.Session) -> str: """Return HTML text of LEP archive page.""" - with requests.Session() as s: - req = s.get(archive_url) + with session: + req = session.get(archive_url, timeout=(6, 33)) req.encoding = "utf-8" return req.text -def get_all_links_from_tag_with_class( - soup_obj: BeautifulSoup, - tag_name: str, - class_name: str, -) -> List[str]: +def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: """Return list of links from HTML block.""" - tag_entry_content = soup_obj.find(tag_name, class_= class_name) all_links: List[str] = [] - all_link_tags = tag_entry_content.find_all("a") - for link in all_link_tags: - all_links.append(link["href"].strip()) + all_tags_a = soup_obj("a") + for tag_a in all_tags_a: + all_links.append(tag_a["href"].strip()) return all_links -def replace_misspelled_link(all_links: List) -> List: +def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: """Replace link with '.ukm' misspelled LTD""" - links_without_misspelled_ltd = copy.deepcopy(all_links) - try: - bad_index = links_without_misspelled_ltd.index("https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/") - links_without_misspelled_ltd[bad_index] = "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" - except ValueError: - # Here, no need to handle it. - pass - return links_without_misspelled_ltd + modified_soup = copy.copy(soup_obj) # TODO: Really needs to copy? + misspelled_tag_a = modified_soup.find("a", href="https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/") + if misspelled_tag_a: + misspelled_tag_a["href"] = "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" + del misspelled_tag_a + return modified_soup def remove_irrelevant_links(links: List) -> List: @@ -70,6 +64,23 @@ def remove_not_episode_links(links: List) -> List: return result +def get_links_text_by_href( + soup_obj: BeautifulSoup, + links: List[str], +) -> List[str]: + """Return text of tag by its href attribute.""" + link_strings = [] + for url in links: + a_tag = soup_obj.find("a", href=url) + if url in [*conf.LINK_TEXTS_MAPPING]: + link_string = conf.LINK_TEXTS_MAPPING[url] + else: + link_string = " ".join([text for text in a_tag.stripped_strings]) + link_strings.append(link_string) + + return link_strings + + def substitute_short_links(unique_links: List) -> List: """Return list of links with final location for short links.""" final_links = copy.deepcopy(unique_links) @@ -85,16 +96,37 @@ def substitute_short_links(unique_links: List) -> List: def get_archive_parsing_results(archive_url: str) -> Tuple: """Return Tuple with valid episode links and discarded links.""" - html_page = get_lep_archive_page(archive_url) - soup_obj = BeautifulSoup(html_page, "lxml") - all_links = get_all_links_from_tag_with_class(soup_obj, "div", "entry-content") - cleaned_links = replace_misspelled_link(all_links) - cleaned_links = remove_irrelevant_links(cleaned_links) - cleaned_links = remove_not_episode_links(cleaned_links) - # Get unique links with preserved order for Python 3.7+ - unique_links = list(dict.fromkeys(cleaned_links)) - final_list = substitute_short_links(unique_links) - parsing_result = (final_list, deleted_links) - return parsing_result - - + html_page = get_web_page_html_text(archive_url, s) + only_div_entry_content = SoupStrainer("div", class_="entry-content") + soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_entry_content) + + if soup_div: + modified_soup_div = replace_misspelled_link(soup_div) + all_links = get_all_links_from_soup(modified_soup_div) + cleaned_links = remove_irrelevant_links(all_links) + cleaned_links = remove_not_episode_links(cleaned_links) + + # Get unique links with preserved order for Python 3.7+ + unique_links = list(dict.fromkeys(cleaned_links)) + + # Get list of 'link labeles' + link_strings = get_links_text_by_href(modified_soup_div, unique_links) + + final_list = substitute_short_links(unique_links) + parsing_result = (final_list, deleted_links, link_strings) + return parsing_result + else: + print("[ERROR] Can't parse this page: Main
is not found") + return None + + +def parse_single_page(url: str, session: requests.Session) -> Any: + """Returns result of parsing of single page.""" + req = session.get(url, timeout=(3.05, 27)) + req.encoding = "utf-8" + html_text = req.text + + soup_obj = BeautifulSoup(html_text, "lxml") + page_title = soup_obj.title.string + result = page_title + return result \ No newline at end of file From 35880bee0dd18ef40ab9e23326aa1a56497b0a0c Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 17 Sep 2021 11:14:19 +0300 Subject: [PATCH 10/54] chore: :wrench: Add mapping dict for 4 links and their text --- src/lep_downloader/config.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index 106433e..e299a6e 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -1,7 +1,6 @@ """App configuration module.""" - ARCHIVE_URL = "https://hotenov.com" LOCAL_ARCHIVE_HTML = "2021-08-10_lep-archive-page-content-pretty.html" @@ -24,4 +23,18 @@ "https://wp.me/P4IuUx-82H", ) -EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" \ No newline at end of file +EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" + +LINK_TEXTS_MAPPING = { + "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/": \ + "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", + + "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/": \ + "[Website content] Luke’s Criminal Past (ZEP Episode 185)", + + "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": \ + "[Website content] I was invited onto the “English Across The Pond” Podcast", + + "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/": \ + "[VIDEO] I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy", +} \ No newline at end of file From bb6cc747ec153c9bae4f6e90a0880add515e35d7 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 17 Sep 2021 11:17:51 +0300 Subject: [PATCH 11/54] test: :construction: Add PoC test for mocking several episode pages --- tests/test_parser.py | 98 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 1 deletion(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 6c51c4c..e8345d7 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -2,6 +2,8 @@ from pathlib import Path import pytest +import requests +import requests_mock as req_mock from lep_downloader import config as conf from lep_downloader import parser @@ -11,6 +13,58 @@ "fixtures", ) +LINK_FILE_MAPPING = { + "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/": \ + "2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html", + + "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html", + + "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html", + + "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html", + + "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/": \ + "2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html", + + "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html", + + "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html", + + "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html", + + "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html", + + "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html", + + "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html", + + "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html", + + "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%f0%9f%8f%86/": \ + "2021-08-11_lep-e703-page-content-pretty.html", + + "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/": \ + "2021-08-11_lep-e711-page-content-pretty.html", + + "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%f0%9f%87%a9%f0%9f%87%aa-wisbolep-runner-up/": \ + "2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-🇩🇪-wisbolep-run.html", + + "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/": \ + "2021-08-11_lep-e733-page-content-pretty.html", +} + +MAPPING_KEYS = [*LINK_FILE_MAPPING] + def mock_archive_page(request, context): """"Callback for creating mocked Response.""" @@ -27,4 +81,46 @@ def test_parsing_result(requests_mock) -> None: all_links = parsing_result[0] assert all_links is not None assert len(all_links) > 781 - assert "/2009/04/12/episode-1-introduction" in all_links[-1] \ No newline at end of file + assert "/2009/04/12/episode-1-introduction" in all_links[-1] + # Intersection of mocked pages and all links + intersection = set(MAPPING_KEYS) & set(all_links) + assert len(intersection) > 15 + + link_strings = parsing_result[2] + assert len(link_strings) > 781 + + +def mocked_single_page_matcher(request): + """Return local file instead of real web page.""" + url = request.url.lower() + if url in MAPPING_KEYS: + resp = requests.Response() + resp.status_code = 200 + return resp + return None + + +def mock_single_page(request, context): + """"Callback for creating mocked Response.""" + # context.status_code = 200 + url = request.url.lower() + local_path = OFFLINE_HTML_DIR / "ep_htmls" / LINK_FILE_MAPPING[url] + return open(local_path, "rb") + + +def test_mocking_single_page(requests_mock) -> None: + """It parses mocked archived page.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) + all_links = parsing_result[0] + + session = requests.Session() + titles = [] + for url in all_links: + try: + requests_mock.get(url, additional_matcher=mocked_single_page_matcher, body=mock_single_page) + title = parser.parse_single_page(url, session) + titles.append(title) + except req_mock.exceptions.NoMockAddress: + pass + assert len(titles) > 15 \ No newline at end of file From 1fc6157565025427f602df51a287ea8b5a1ae2bf Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 14:26:48 +0300 Subject: [PATCH 12/54] chore: :wrench: Update mypy settings in pyproject.toml - Decrease 'fail_under' downto 85 (during active develpment stage) - Use new syntax (section) for ignoring imports in mypy for several packages --- pyproject.toml | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 905aa9b..6de4977 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,7 +62,7 @@ source = ["lep_downloader"] [tool.coverage.report] show_missing = true -fail_under = 100 +fail_under = 85 [tool.mypy] strict = true @@ -71,13 +71,15 @@ show_column_numbers = true show_error_codes = true show_error_context = true -[mypy-desert] -ignore_missing_imports = true - -[mypy-pytest] -ignore_missing_imports = true - -[mypy-pytest_mock] +[[tool.mypy.overrides]] +module = [ + 'desert', + 'pytest', + 'pytest_mock.*', + 'requests.*', + 'bs4.*', + 'requests_mock.*', +] ignore_missing_imports = true [build-system] From 06a9fdcd0c7400941e2b37bf1170b6490af48293 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 14:29:07 +0300 Subject: [PATCH 13/54] chore: :wrench: Rename Tuple with irrelevant links --- src/lep_downloader/config.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index e299a6e..d6f9f89 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -19,7 +19,7 @@ # MISSPELLED_LTD = ".co.ukm" -NOT_EPISODE_LINKS = ( +IRRELEVANT_LINKS = ( "https://wp.me/P4IuUx-82H", ) @@ -37,4 +37,4 @@ "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/": \ "[VIDEO] I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy", -} \ No newline at end of file +} From 9a804b74e86e4bc5746f8e8553a14aec1699140c Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 14:31:55 +0300 Subject: [PATCH 14/54] chore: :recycle: Improve typings and function names Add raised exceptions (try/except) for function to get text of HTML --- src/lep_downloader/parser.py | 40 +++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index a21fd99..2ce6984 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,7 +1,7 @@ """LEP module for parsing logic.""" import copy import re -from typing import Any, List, Tuple +from typing import Any, List, Optional, Tuple from bs4 import BeautifulSoup, SoupStrainer import requests @@ -15,12 +15,24 @@ s = requests.Session() -def get_web_page_html_text(archive_url: str, session: requests.Session) -> str: +def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: """Return HTML text of LEP archive page.""" with session: - req = session.get(archive_url, timeout=(6, 33)) - req.encoding = "utf-8" - return req.text + try: + resp = session.get(page_url, timeout=(6, 33)) + if not resp.ok: + resp.raise_for_status() + except requests.exceptions.HTTPError: + raise + except requests.exceptions.Timeout: + raise + except requests.exceptions.ConnectionError: + raise + except: + raise + else: + resp.encoding = "utf-8" + return resp.text def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: @@ -43,18 +55,18 @@ def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: return modified_soup -def remove_irrelevant_links(links: List) -> List: +def remove_irrelevant_links(links: List[str]) -> List[str]: """Return list of links without known irrelevant links.""" for i, link in enumerate(links[:]): - if link in conf.NOT_EPISODE_LINKS: + if link in conf.IRRELEVANT_LINKS: deleted_links.append(link) del links[i] return links -def remove_not_episode_links(links: List) -> List: +def remove_not_episode_links_by_regex_pattern(links: List[str]) -> List[str]: """Return list of adopted episode (post) links.""" - result = [] + result: List[str] = [] for link in links: match = ep_pattern.match(link) if match: @@ -81,7 +93,7 @@ def get_links_text_by_href( return link_strings -def substitute_short_links(unique_links: List) -> List: +def substitute_short_links(unique_links: List[str]) -> List[str]: """Return list of links with final location for short links.""" final_links = copy.deepcopy(unique_links) @@ -94,17 +106,17 @@ def substitute_short_links(unique_links: List) -> List: return final_links -def get_archive_parsing_results(archive_url: str) -> Tuple: +def get_archive_parsing_results(archive_url: str) -> Any: """Return Tuple with valid episode links and discarded links.""" html_page = get_web_page_html_text(archive_url, s) only_div_entry_content = SoupStrainer("div", class_="entry-content") soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_entry_content) - if soup_div: + if len(soup_div) > 0: modified_soup_div = replace_misspelled_link(soup_div) all_links = get_all_links_from_soup(modified_soup_div) cleaned_links = remove_irrelevant_links(all_links) - cleaned_links = remove_not_episode_links(cleaned_links) + cleaned_links = remove_not_episode_links_by_regex_pattern(cleaned_links) # Get unique links with preserved order for Python 3.7+ unique_links = list(dict.fromkeys(cleaned_links)) @@ -129,4 +141,4 @@ def parse_single_page(url: str, session: requests.Session) -> Any: soup_obj = BeautifulSoup(html_text, "lxml") page_title = soup_obj.title.string result = page_title - return result \ No newline at end of file + return result From 15b4c020d0539fb0f49873eb6a525ea0c7daf76d Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 14:33:26 +0300 Subject: [PATCH 15/54] test(parser): :white_check_mark: Add several general tests for parsing functions --- tests/test_parser.py | 194 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 179 insertions(+), 15 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index e8345d7..f9233a9 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,9 +1,13 @@ """Test cases for the parser module.""" from pathlib import Path +import typing as t +from bs4 import BeautifulSoup import pytest import requests import requests_mock as req_mock +from requests_mock.mocker import Mocker as rm_Mocker +from requests_mock.response import _Context as rm_Context from lep_downloader import config as conf from lep_downloader import parser @@ -63,18 +67,170 @@ "2021-08-11_lep-e733-page-content-pretty.html", } -MAPPING_KEYS = [*LINK_FILE_MAPPING] - - -def mock_archive_page(request, context): - """"Callback for creating mocked Response.""" +MAPPING_KEYS: t.List[str] = [*LINK_FILE_MAPPING] + +s = requests.Session() + + +def test_getting_success_page_response(requests_mock: rm_Mocker) -> None: + """It gets HTML content as text.""" + requests_mock.get(req_mock.ANY, text="Response OK") + resp = parser.get_web_page_html_text(conf.ARCHIVE_URL, s) + assert resp == "Response OK" + + +def test_getting_404_page_response(requests_mock: rm_Mocker) -> None: + """It raises HTTPError if page is not found.""" + requests_mock.get(req_mock.ANY, text="Response OK", status_code=404) + with pytest.raises(requests.exceptions.HTTPError) as exc_info: + parser.get_web_page_html_text(conf.ARCHIVE_URL, s) + assert exc_info.typename == "HTTPError" + + +def test_getting_503_page_response(requests_mock: rm_Mocker) -> None: + """It raises HTTPError if service is unavailable.""" + requests_mock.get(req_mock.ANY, text="Response OK", status_code=503) + with pytest.raises(requests.exceptions.HTTPError) as exc_info: + parser.get_web_page_html_text(conf.ARCHIVE_URL, s) + assert exc_info.typename == "HTTPError" + + +def test_retrieve_all_links_from_soup() -> None: + """It returns only tags from soup object.""" + html_doc = """The Dormouse's story + +

The Dormouse's story

+

Once upon a time there were three little sisters; and their names were + Elsie, + Sara and + Tillie; + and they lived at the bottom of a well. +

+

...

+ """ + soup = BeautifulSoup(html_doc, "lxml") + only_links = parser.get_all_links_from_soup(soup) + assert len(only_links) == 3 + + +def test_replacing_misspelled_link() -> None: + """It replaces misspelled link and returns modified soup object.""" + html_doc = """The Dormouse's story + +

Once upon a time there were three little sisters; and their names were + Elsie, + Sara and + Tillie; + and they lived at the bottom of a well. +

+ """ + soup = BeautifulSoup(html_doc, "lxml") + modified_soup = parser.replace_misspelled_link(soup) + new_href = modified_soup("a")[1]["href"] + assert new_href == "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" + + +def test_replacing_nothing_when_no_misspelled_link() -> None: + """It replaces nothing when there is no misspelled link and returns the same soup object.""" + html_doc = """The Dormouse's story + +

Once upon a time there were three little sisters; and their names were + Elsie, + Sara and + Tillie; + and they lived at the bottom of a well. +

+ """ + soup = BeautifulSoup(html_doc, "lxml") + modified_soup = parser.replace_misspelled_link(soup) + assert soup == modified_soup + + +def test_removing_irrelevant_links() -> None: + """It removes known (from config list) irrelevant links.""" + test_list: t.List[str] = [ + "https://teacherluke.co.uk/2020/11/23/wisbolep/", + "https://wp.me/P4IuUx-82H", # <- Link to app + "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/", + ] + new_list: t.List[str] = parser.remove_irrelevant_links(test_list) + assert len(new_list) == 3 + + +def test_removing_not_episode_links() -> None: + """It removes links from list which are not match by regex pattern.""" + test_list: t.List[str] = [ + "https://teacherluke.co.uk/2020/11/23/wisbolep/", + "https://teacherluke.co.uk/premium/archive-comment-section/", # <- bad + "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/", + "http://wp.me/p4IuUx-7sg", + "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/", + "https://example.com/", # <- bad + ] + new_list: t.List[str] = parser.remove_not_episode_links_by_regex_pattern(test_list) + assert len(new_list) == 5 + + +def test_getting_links_text_by_href() -> None: + """It gets list of link texts, searching by their 'href' attribute.""" + html_doc: str = """The Dormouse's story + +

Once upon a time there were three little sisters; and their names were + Elsie, + + Link from dict and + Tillie; + Text with spaces + ; + and they lived at the bottom of a well. +

+ 4th sister is John!; + + """ + search_links: t.List[str] = [ + "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", + "http://example.com/spaces", + "http://example.com/john", + ] + soup = BeautifulSoup(html_doc, "lxml") + texts = parser.get_links_text_by_href(soup, search_links) + expected_texts: t.List[str] = [ + "[Website content] I was invited onto the “English Across The Pond” Podcast", + "Text with spaces", + "4th sister is John!", + ] + assert texts == expected_texts + + +def test_short_links_substitution() -> None: + """It replaces short links with links from config dictionary.""" + test_list: t.List[str] = [ + "http://wp.me/p4IuUx-7sg", + "https://wp.me/P4IuUx-82H", # <- Link to app (no replacing) + "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "https://wp.me/p4IuUx-29", + ] + replaced: t.List[str] = parser.substitute_short_links(test_list) + expected: t.List[str] = [ + "https://teacherluke.co.uk/2017/01/10/415-with-the-family-part-3-more-encounters-with-famous-people/", + "https://wp.me/P4IuUx-82H", + "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "https://teacherluke.co.uk/2011/10/11/notting-hill-carnival-video-frustration-out-takes/", + ] + assert replaced == expected + + +def mock_archive_page(request: requests.Request, context: rm_Context) -> t.IO[bytes]: + """"Callback for creating mocked Response of archive page.""" context.status_code = 200 # resp = io.StringIO() resp = OFFLINE_HTML_DIR / conf.LOCAL_ARCHIVE_HTML return open(resp, "rb") -def test_parsing_result(requests_mock) -> None: +def test_parsing_result(requests_mock: rm_Mocker) -> None: """It parses mocked archived page.""" requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) @@ -90,8 +246,16 @@ def test_parsing_result(requests_mock) -> None: assert len(link_strings) > 781 -def mocked_single_page_matcher(request): - """Return local file instead of real web page.""" +def test_parsing_invalid_html(requests_mock: rm_Mocker) -> None: + """It returns None if page does not comply with the parsing rules.""" + markup: str = '' + requests_mock.get(conf.ARCHIVE_URL, text=markup) + parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) + assert parsing_result is None + + +def mocked_single_page_matcher(request: requests.Request) -> t.Optional[requests.Response]: + """Return OK response if URL has mocked (pre-saved) local file.""" url = request.url.lower() if url in MAPPING_KEYS: resp = requests.Response() @@ -100,19 +264,19 @@ def mocked_single_page_matcher(request): return None -def mock_single_page(request, context): - """"Callback for creating mocked Response.""" +def mock_single_page(request: requests.Request, context: rm_Context) -> t.IO[bytes]: + """"Callback for creating mocked Response of episode page.""" # context.status_code = 200 url = request.url.lower() local_path = OFFLINE_HTML_DIR / "ep_htmls" / LINK_FILE_MAPPING[url] return open(local_path, "rb") -def test_mocking_single_page(requests_mock) -> None: - """It parses mocked archived page.""" +def test_mocking_single_page(requests_mock: rm_Mocker) -> None: + """It parses mocked episode page.""" requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) - parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) - all_links = parsing_result[0] + parsing_result: t.Tuple[t.List[str], ...] = parser.get_archive_parsing_results(conf.ARCHIVE_URL) + all_links: t.List[str] = parsing_result[0] session = requests.Session() titles = [] @@ -123,4 +287,4 @@ def test_mocking_single_page(requests_mock) -> None: titles.append(title) except req_mock.exceptions.NoMockAddress: pass - assert len(titles) > 15 \ No newline at end of file + assert len(titles) > 15 From 18c091fa93eb45902afd66e2672328ce48934245 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 14:34:55 +0300 Subject: [PATCH 16/54] ci: :wrench: Add installing of 'requests_mock' into 'tests' Nox session --- noxfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/noxfile.py b/noxfile.py index e1986e8..bdd628a 100644 --- a/noxfile.py +++ b/noxfile.py @@ -129,7 +129,7 @@ def mypy(session: Session) -> None: def tests(session: Session) -> None: """Run the test suite.""" session.install(".") - session.install("coverage[toml]", "pytest", "pygments") + session.install("coverage[toml]", "pytest", "pygments", "requests_mock") try: session.run("coverage", "run", "--parallel", "-m", "pytest", *session.posargs) finally: From a1acae0bf1f9c028309e0eadd25d6ce6052758d3 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 15:36:24 +0300 Subject: [PATCH 17/54] ci: :wrench: Exclude HTML files from 'pre-commit' hooks --- .pre-commit-config.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a76fc80..3d662e6 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,6 +5,7 @@ exclude: | luke_english_podcast_downloader.py| dist/2.0.5/LEP-downloader.py )$ + repos: - repo: local hooks: @@ -34,6 +35,7 @@ repos: language: system types: [text] stages: [commit, push, manual] + exclude_types: [html] - id: flake8 name: flake8 entry: flake8 @@ -52,7 +54,9 @@ repos: language: system types: [text] stages: [commit, push, manual] + exclude_types: [html] - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.3.0 hooks: - id: prettier + exclude_types: [html] From 9b02deaa0328f7578f3934f250af40b63703a76a Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 15:38:31 +0300 Subject: [PATCH 18/54] style: :art: Commit changes which were modified by 'pre-commit' hooks --- src/lep_downloader/config.py | 19 ++------ src/lep_downloader/downloader.py | 2 +- src/lep_downloader/parser.py | 16 ++++-- tests/test_parser.py | 83 ++++++++++++-------------------- 4 files changed, 48 insertions(+), 72 deletions(-) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index d6f9f89..70bbb4e 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -19,22 +19,13 @@ # MISSPELLED_LTD = ".co.ukm" -IRRELEVANT_LINKS = ( - "https://wp.me/P4IuUx-82H", -) +IRRELEVANT_LINKS = ("https://wp.me/P4IuUx-82H",) EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" LINK_TEXTS_MAPPING = { - "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/": \ - "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", - - "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/": \ - "[Website content] Luke’s Criminal Past (ZEP Episode 185)", - - "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": \ - "[Website content] I was invited onto the “English Across The Pond” Podcast", - - "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/": \ - "[VIDEO] I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy", + "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", + "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/": "[Website content] Luke’s Criminal Past (ZEP Episode 185)", + "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": "[Website content] I was invited onto the “English Across The Pond” Podcast", + "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/": "[VIDEO] I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy", } diff --git a/src/lep_downloader/downloader.py b/src/lep_downloader/downloader.py index 898887b..c2224c4 100644 --- a/src/lep_downloader/downloader.py +++ b/src/lep_downloader/downloader.py @@ -1 +1 @@ -"""LEP module for downloading logic.""" \ No newline at end of file +"""LEP module for downloading logic.""" diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 2ce6984..af6bf83 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,10 +1,14 @@ """LEP module for parsing logic.""" import copy import re -from typing import Any, List, Optional, Tuple +from typing import Any +from typing import List +from typing import Optional +from typing import Tuple -from bs4 import BeautifulSoup, SoupStrainer import requests +from bs4 import BeautifulSoup +from bs4 import SoupStrainer from lep_downloader import config as conf @@ -48,9 +52,13 @@ def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: """Replace link with '.ukm' misspelled LTD""" modified_soup = copy.copy(soup_obj) # TODO: Really needs to copy? - misspelled_tag_a = modified_soup.find("a", href="https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/") + misspelled_tag_a = modified_soup.find( + "a", href="https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/" + ) if misspelled_tag_a: - misspelled_tag_a["href"] = "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" + misspelled_tag_a[ + "href" + ] = "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/" del misspelled_tag_a return modified_soup diff --git a/tests/test_parser.py b/tests/test_parser.py index f9233a9..2a8584c 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,11 +1,11 @@ """Test cases for the parser module.""" -from pathlib import Path import typing as t +from pathlib import Path -from bs4 import BeautifulSoup import pytest import requests import requests_mock as req_mock +from bs4 import BeautifulSoup from requests_mock.mocker import Mocker as rm_Mocker from requests_mock.response import _Context as rm_Context @@ -18,53 +18,22 @@ ) LINK_FILE_MAPPING = { - "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/": \ - "2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html", - - "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html", - - "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html", - - "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html", - - "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/": \ - "2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html", - - "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html", - - "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html", - - "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html", - - "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html", - - "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html", - - "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html", - - "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html", - - "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%f0%9f%8f%86/": \ - "2021-08-11_lep-e703-page-content-pretty.html", - - "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/": \ - "2021-08-11_lep-e711-page-content-pretty.html", - - "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%f0%9f%87%a9%f0%9f%87%aa-wisbolep-runner-up/": \ - "2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-🇩🇪-wisbolep-run.html", - - "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/": \ - "2021-08-11_lep-e733-page-content-pretty.html", + "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/": "2021-09-13_05-37-36 teacherluke.co.uk _2009_04_12_episode-1-introduction_.html", + "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/": "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_extra-podcast-12-phrasal-verbs_.html", + "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/": "2021-09-07_09-14-02 teacherluke.co.uk _2009_10_19_episode-11-michael-jackson_.html", + "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/": "2021-09-07_09-14-02 teacherluke.co.uk _2010_03_25_london-video-interviews-pt-1_.html", + "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/": "2021-09-07_09-14-02 teacherluke.wordpress.com _2012_09_27_113-setting-the-world-to-rights_.html", + "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/": "2021-09-07_09-14-02 teacherluke.co.uk _2014_06_30_193-culture-shock-life-in-london-pt-2_.html", + "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/": "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-1_.html", + "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/": "2021-09-07_09-14-02 teacherluke.co.uk _2015_10_07_300-episode-300-part-2_.html", + "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/": "2021-09-07_09-14-02 teacherluke.co.uk _2016_08_07_370-in-conversation-with-rob-ager-from.html", + "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/": "2021-09-07_09-14-02 teacherluke.co.uk _2017_03_11_lep-on-zep-my-recent-interview-on-zden.html", + "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": "2021-09-07_09-14-02 teacherluke.co.uk _2017_05_26_i-was-invited-onto-the-english-across-.html", + "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/": "2021-09-07_09-14-02 teacherluke.co.uk _2017_08_26_website-only-a-history-of-british-pop-.html", + "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%f0%9f%8f%86/": "2021-08-11_lep-e703-page-content-pretty.html", + "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/": "2021-08-11_lep-e711-page-content-pretty.html", + "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%f0%9f%87%a9%f0%9f%87%aa-wisbolep-runner-up/": "2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-🇩🇪-wisbolep-run.html", + "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/": "2021-08-11_lep-e733-page-content-pretty.html", } MAPPING_KEYS: t.List[str] = [*LINK_FILE_MAPPING] @@ -182,7 +151,7 @@ def test_getting_links_text_by_href() -> None: Link from dict and Tillie; - Text with spaces + Text with spaces ; and they lived at the bottom of a well.

@@ -254,7 +223,9 @@ def test_parsing_invalid_html(requests_mock: rm_Mocker) -> None: assert parsing_result is None -def mocked_single_page_matcher(request: requests.Request) -> t.Optional[requests.Response]: +def mocked_single_page_matcher( + request: requests.Request, +) -> t.Optional[requests.Response]: """Return OK response if URL has mocked (pre-saved) local file.""" url = request.url.lower() if url in MAPPING_KEYS: @@ -275,14 +246,20 @@ def mock_single_page(request: requests.Request, context: rm_Context) -> t.IO[byt def test_mocking_single_page(requests_mock: rm_Mocker) -> None: """It parses mocked episode page.""" requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) - parsing_result: t.Tuple[t.List[str], ...] = parser.get_archive_parsing_results(conf.ARCHIVE_URL) + parsing_result: t.Tuple[t.List[str], ...] = parser.get_archive_parsing_results( + conf.ARCHIVE_URL + ) all_links: t.List[str] = parsing_result[0] session = requests.Session() titles = [] for url in all_links: try: - requests_mock.get(url, additional_matcher=mocked_single_page_matcher, body=mock_single_page) + requests_mock.get( + url, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) title = parser.parse_single_page(url, session) titles.append(title) except req_mock.exceptions.NoMockAddress: From 1fafe554c61b764dcfdd1d59eeb33a597d527965 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 16:14:44 +0300 Subject: [PATCH 19/54] style: :art: Fix flake8 errors --- src/lep_downloader/parser.py | 6 ++---- tests/test_parser.py | 5 ++--- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index af6bf83..c420cab 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -3,8 +3,6 @@ import re from typing import Any from typing import List -from typing import Optional -from typing import Tuple import requests from bs4 import BeautifulSoup @@ -32,7 +30,7 @@ def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: raise except requests.exceptions.ConnectionError: raise - except: + except Exception: raise else: resp.encoding = "utf-8" @@ -50,7 +48,7 @@ def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: - """Replace link with '.ukm' misspelled LTD""" + """Replace link with '.ukm' misspelled LTD.""" modified_soup = copy.copy(soup_obj) # TODO: Really needs to copy? misspelled_tag_a = modified_soup.find( "a", href="https://teacherluke.co.ukm/2012/08/06/london-olympics-2012/" diff --git a/tests/test_parser.py b/tests/test_parser.py index 2a8584c..5849b5b 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -156,7 +156,6 @@ def test_getting_links_text_by_href() -> None: and they lived at the bottom of a well.

4th sister is John!; - """ search_links: t.List[str] = [ "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", @@ -192,7 +191,7 @@ def test_short_links_substitution() -> None: def mock_archive_page(request: requests.Request, context: rm_Context) -> t.IO[bytes]: - """"Callback for creating mocked Response of archive page.""" + """Callback for creating mocked Response of archive page.""" context.status_code = 200 # resp = io.StringIO() resp = OFFLINE_HTML_DIR / conf.LOCAL_ARCHIVE_HTML @@ -236,7 +235,7 @@ def mocked_single_page_matcher( def mock_single_page(request: requests.Request, context: rm_Context) -> t.IO[bytes]: - """"Callback for creating mocked Response of episode page.""" + """Callback for creating mocked Response of episode page.""" # context.status_code = 200 url = request.url.lower() local_path = OFFLINE_HTML_DIR / "ep_htmls" / LINK_FILE_MAPPING[url] From b32e2edecf3b4cd5fdcb7162bb5ab45584219470 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 16:17:00 +0300 Subject: [PATCH 20/54] chore: :heavy_plus_sign: Add flake8 plugins to dev deps flake8-black (0.2.3) flake8-import-order (0.18.1) --- poetry.lock | 34 +++++++++++++++++++++++++++++++++- pyproject.toml | 2 ++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/poetry.lock b/poetry.lock index 1cac655..99c4ebd 100644 --- a/poetry.lock +++ b/poetry.lock @@ -255,6 +255,19 @@ flake8 = "*" flake8-polyfill = "*" pycodestyle = "*" +[[package]] +name = "flake8-black" +version = "0.2.3" +description = "flake8 plugin to call black as a code style validator" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +black = "*" +flake8 = ">=3.0.0" +toml = "*" + [[package]] name = "flake8-bugbear" version = "21.4.3" @@ -282,6 +295,17 @@ python-versions = "*" flake8 = ">=3" pydocstyle = ">=2.1" +[[package]] +name = "flake8-import-order" +version = "0.18.1" +description = "Flake8 and pylama plugin that checks the ordering of import statements." +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +pycodestyle = "*" + [[package]] name = "flake8-polyfill" version = "1.0.2" @@ -1058,7 +1082,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "691fcb60a6be62fe836c34e3a7794fdd086adf2adbaee962e16716f574c20e0c" +content-hash = "3e2c4a25a447777427c372c7490f0a830f19c9cae192b9dd15388f8cb5367e4b" [metadata.files] alabaster = [ @@ -1202,6 +1226,10 @@ flake8 = [ flake8-bandit = [ {file = "flake8_bandit-2.1.2.tar.gz", hash = "sha256:687fc8da2e4a239b206af2e54a90093572a60d0954f3054e23690739b0b0de3b"}, ] +flake8-black = [ + {file = "flake8-black-0.2.3.tar.gz", hash = "sha256:c199844bc1b559d91195ebe8620216f21ed67f2cc1ff6884294c91a0d2492684"}, + {file = "flake8_black-0.2.3-py3-none-any.whl", hash = "sha256:cc080ba5b3773b69ba102b6617a00cc4ecbad8914109690cfda4d565ea435d96"}, +] flake8-bugbear = [ {file = "flake8-bugbear-21.4.3.tar.gz", hash = "sha256:2346c81f889955b39e4a368eb7d508de723d9de05716c287dc860a4073dc57e7"}, {file = "flake8_bugbear-21.4.3-py36.py37.py38-none-any.whl", hash = "sha256:4f305dca96be62bf732a218fe6f1825472a621d3452c5b994d8f89dae21dbafa"}, @@ -1210,6 +1238,10 @@ flake8-docstrings = [ {file = "flake8-docstrings-1.6.0.tar.gz", hash = "sha256:9fe7c6a306064af8e62a055c2f61e9eb1da55f84bb39caef2b84ce53708ac34b"}, {file = "flake8_docstrings-1.6.0-py2.py3-none-any.whl", hash = "sha256:99cac583d6c7e32dd28bbfbef120a7c0d1b6dde4adb5a9fd441c4227a6534bde"}, ] +flake8-import-order = [ + {file = "flake8-import-order-0.18.1.tar.gz", hash = "sha256:a28dc39545ea4606c1ac3c24e9d05c849c6e5444a50fb7e9cdd430fc94de6e92"}, + {file = "flake8_import_order-0.18.1-py2.py3-none-any.whl", hash = "sha256:90a80e46886259b9c396b578d75c749801a41ee969a235e163cfe1be7afd2543"}, +] flake8-polyfill = [ {file = "flake8-polyfill-1.0.2.tar.gz", hash = "sha256:e44b087597f6da52ec6393a709e7108b2905317d0c0b744cdca6208e670d8eda"}, {file = "flake8_polyfill-1.0.2-py2.py3-none-any.whl", hash = "sha256:12be6a34ee3ab795b19ca73505e7b55826d5f6ad7230d31b18e106400169b9e9"}, diff --git a/pyproject.toml b/pyproject.toml index 6de4977..13e6fa2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -49,6 +49,8 @@ sphinx-click = "^3.0.1" Pygments = "^2.9.0" requests-file = "^1.5.1" requests-mock = "^1.9.3" +flake8-black = "^0.2.3" +flake8-import-order = "^0.18.1" [tool.poetry.scripts] lep-downloader = "lep_downloader.__main__:main" From f72787149dc0e2fda8947c92a83fcc4fcbc14667 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 16:19:22 +0300 Subject: [PATCH 21/54] chore: :wrench: Change flake8 config: max-line-length = 120 and ignore long lines (B950) --- .flake8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.flake8 b/.flake8 index 0f46431..79413d0 100644 --- a/.flake8 +++ b/.flake8 @@ -1,7 +1,7 @@ [flake8] select = B,B9,C,D,DAR,E,F,N,RST,S,W -ignore = E203,E501,RST201,RST203,RST301,W503 -max-line-length = 80 +ignore = E203,E501,RST201,RST203,RST301,W503,B950 +max-line-length = 120 max-complexity = 10 docstring-convention = google per-file-ignores = tests/*:S101 From 6207855477829eb3baafe47b9d5424e29a635ed5 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 16:22:10 +0300 Subject: [PATCH 22/54] ci: :wrench: Add installation of 'requests_mock' into 'typeguard' Nox session --- noxfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/noxfile.py b/noxfile.py index bdd628a..902e97b 100644 --- a/noxfile.py +++ b/noxfile.py @@ -154,7 +154,7 @@ def coverage(session: Session) -> None: def typeguard(session: Session) -> None: """Runtime type checking using Typeguard.""" session.install(".") - session.install("pytest", "typeguard", "pygments") + session.install("pytest", "typeguard", "pygments", "requests_mock") session.run("pytest", f"--typeguard-packages={package}", *session.posargs) From 375a777809ff585d77bcf4f759ad788335cc51e5 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 20 Sep 2021 16:27:42 +0300 Subject: [PATCH 23/54] chore: :heavy_minus_sign: Remove unused 'requests-file' from dev-deps --- poetry.lock | 18 +----------------- pyproject.toml | 1 - 2 files changed, 1 insertion(+), 18 deletions(-) diff --git a/poetry.lock b/poetry.lock index 99c4ebd..7270ccd 100644 --- a/poetry.lock +++ b/poetry.lock @@ -705,18 +705,6 @@ urllib3 = ">=1.21.1,<1.27" socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] -[[package]] -name = "requests-file" -version = "1.5.1" -description = "File transport adapter for Requests" -category = "dev" -optional = false -python-versions = "*" - -[package.dependencies] -requests = ">=1.0.0" -six = "*" - [[package]] name = "requests-mock" version = "1.9.3" @@ -1082,7 +1070,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "3e2c4a25a447777427c372c7490f0a830f19c9cae192b9dd15388f8cb5367e4b" +content-hash = "4ce37111810b81a6b31f46e161cffd3e7149555ebb0b0d52368aec7f850a39f5" [metadata.files] alabaster = [ @@ -1548,10 +1536,6 @@ requests = [ {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, ] -requests-file = [ - {file = "requests-file-1.5.1.tar.gz", hash = "sha256:07d74208d3389d01c38ab89ef403af0cfec63957d53a0081d8eca738d0247d8e"}, - {file = "requests_file-1.5.1-py2.py3-none-any.whl", hash = "sha256:dfe5dae75c12481f68ba353183c53a65e6044c923e64c24b2209f6c7570ca953"}, -] requests-mock = [ {file = "requests-mock-1.9.3.tar.gz", hash = "sha256:8d72abe54546c1fc9696fa1516672f1031d72a55a1d66c85184f972a24ba0eba"}, {file = "requests_mock-1.9.3-py2.py3-none-any.whl", hash = "sha256:0a2d38a117c08bb78939ec163522976ad59a6b7fdd82b709e23bb98004a44970"}, diff --git a/pyproject.toml b/pyproject.toml index 13e6fa2..f989ff5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -47,7 +47,6 @@ pre-commit-hooks = "^4.0.1" sphinx-rtd-theme = "^0.5.2" sphinx-click = "^3.0.1" Pygments = "^2.9.0" -requests-file = "^1.5.1" requests-mock = "^1.9.3" flake8-black = "^0.2.3" flake8-import-order = "^0.18.1" From 65b5ff98a04e38b999cefc5741aab07de3a1e235 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 22 Sep 2021 09:46:22 +0300 Subject: [PATCH 24/54] fix(parser): Make links texts safe for windows path --- src/lep_downloader/config.py | 2 ++ src/lep_downloader/parser.py | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index 70bbb4e..7e91f37 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -23,6 +23,8 @@ EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" +INVALID_PATH_CHARS_RE = r"[<>:\"/\\\\|?*]" + LINK_TEXTS_MAPPING = { "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/": "[Website content] Luke’s Criminal Past (ZEP Episode 185)", diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index c420cab..ea2c455 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -14,6 +14,7 @@ deleted_links = [] regex = conf.EPISODE_LINK_RE ep_pattern = re.compile(regex, re.IGNORECASE) +INVALID_PATH_CHARS_PATTERN = re.compile(conf.INVALID_PATH_CHARS_RE) s = requests.Session() @@ -94,7 +95,8 @@ def get_links_text_by_href( link_string = conf.LINK_TEXTS_MAPPING[url] else: link_string = " ".join([text for text in a_tag.stripped_strings]) - link_strings.append(link_string) + safe_name = INVALID_PATH_CHARS_PATTERN.sub("_", link_string) + link_strings.append(safe_name) return link_strings From 6fd5b852b282b8ad6c961ac2425f2b8d9beae4df Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 22 Sep 2021 09:48:15 +0300 Subject: [PATCH 25/54] test(parser): :white_check_mark: Update test with getting link text by href --- tests/test_parser.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 5849b5b..fea1261 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -155,7 +155,7 @@ def test_getting_links_text_by_href() -> None: ; and they lived at the bottom of a well.

- 4th sister is John!; + 4th sister: is John?!; """ search_links: t.List[str] = [ "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", @@ -165,9 +165,9 @@ def test_getting_links_text_by_href() -> None: soup = BeautifulSoup(html_doc, "lxml") texts = parser.get_links_text_by_href(soup, search_links) expected_texts: t.List[str] = [ - "[Website content] I was invited onto the “English Across The Pond” Podcast", + "[Website content] I was invited onto the “English Across The Pond” Podcast", # Replace from config dict "Text with spaces", - "4th sister is John!", + "4th sister_ is John_!", # Replace invalid characters ] assert texts == expected_texts From add8793b5156735022c2c13334b5ea0037632dc3 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sat, 25 Sep 2021 08:17:48 +0300 Subject: [PATCH 26/54] chore: :heavy_plus_sign: Add 'rope' package in dev deps for refactoring in VS Code --- poetry.lock | 32 +++++++++++++++++++++++--------- pyproject.toml | 1 + 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/poetry.lock b/poetry.lock index 7270ccd..82d40e2 100644 --- a/poetry.lock +++ b/poetry.lock @@ -732,6 +732,17 @@ python-versions = "*" [package.dependencies] docutils = ">=0.11,<1.0" +[[package]] +name = "rope" +version = "0.20.1" +description = "a python refactoring library..." +category = "dev" +optional = false +python-versions = "*" + +[package.extras] +dev = ["pytest", "pytest-timeout"] + [[package]] name = "ruamel.yaml" version = "0.17.10" @@ -1037,7 +1048,7 @@ testing = ["coverage (>=4)", "coverage-enable-subprocess (>=1)", "flaky (>=3)", [[package]] name = "xdoctest" -version = "0.15.8" +version = "0.15.9" description = "A rewrite of the builtin doctest module" category = "dev" optional = false @@ -1049,11 +1060,11 @@ Pygments = {version = "*", optional = true, markers = "extra == \"colors\""} six = "*" [package.extras] -all = ["six", "codecov", "scikit-build", "cmake", "ninja", "pybind11", "pygments", "colorama", "pytest", "pytest", "pytest-cov", "pytest", "pytest", "pytest-cov", "typing", "nbformat", "nbconvert", "jupyter-client", "ipython", "ipykernel", "pytest", "pytest-cov"] +all = ["pygments", "cmake", "codecov", "ninja", "pybind11", "scikit-build", "six", "colorama", "pytest", "pytest", "pytest-cov", "pytest", "pytest", "pytest-cov", "typing", "ipython", "ipykernel", "jupyter-client", "nbconvert", "nbformat", "pytest", "pytest-cov"] colors = ["pygments", "colorama"] -jupyter = ["nbformat", "nbconvert", "jupyter-client", "ipython", "ipykernel"] -optional = ["pygments", "colorama", "nbformat", "nbconvert", "jupyter-client", "ipython", "ipykernel"] -tests = ["codecov", "scikit-build", "cmake", "ninja", "pybind11", "pytest", "pytest", "pytest-cov", "pytest", "pytest", "pytest-cov", "typing", "nbformat", "nbconvert", "jupyter-client", "ipython", "ipykernel", "pytest", "pytest-cov"] +jupyter = ["ipython", "ipykernel", "jupyter-client", "nbconvert", "nbformat"] +optional = ["pygments", "colorama", "ipython", "ipykernel", "jupyter-client", "nbconvert", "nbformat"] +tests = ["cmake", "codecov", "ninja", "pybind11", "scikit-build", "pytest", "pytest", "pytest-cov", "pytest", "pytest", "pytest-cov", "typing", "ipython", "ipykernel", "jupyter-client", "nbconvert", "nbformat", "pytest", "pytest-cov"] [[package]] name = "zipp" @@ -1070,7 +1081,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=1.2.3)", "pytest-flake8", "pyt [metadata] lock-version = "1.1" python-versions = "^3.7.0" -content-hash = "4ce37111810b81a6b31f46e161cffd3e7149555ebb0b0d52368aec7f850a39f5" +content-hash = "142a2fa00c796050d02fc3a247eceadf5e65fac768432d26972de0fb7b451b0c" [metadata.files] alabaster = [ @@ -1543,6 +1554,9 @@ requests-mock = [ restructuredtext-lint = [ {file = "restructuredtext_lint-1.3.2.tar.gz", hash = "sha256:d3b10a1fe2ecac537e51ae6d151b223b78de9fafdd50e5eb6b08c243df173c80"}, ] +rope = [ + {file = "rope-0.20.1.tar.gz", hash = "sha256:505a2f6b4ac7b18e0429be179f4d8712243a194da5c866b0731f9d91ce7590bb"}, +] "ruamel.yaml" = [ {file = "ruamel.yaml-0.17.10-py3-none-any.whl", hash = "sha256:ffb9b703853e9e8b7861606dfdab1026cf02505bade0653d1880f4b2db47f815"}, {file = "ruamel.yaml-0.17.10.tar.gz", hash = "sha256:106bc8d6dc6a0ff7c9196a47570432036f41d556b779c6b4e618085f57e39e67"}, @@ -1731,9 +1745,9 @@ virtualenv = [ {file = "virtualenv-20.4.7.tar.gz", hash = "sha256:14fdf849f80dbb29a4eb6caa9875d476ee2a5cf76a5f5415fa2f1606010ab467"}, ] xdoctest = [ - {file = "xdoctest-0.15.8-py2.py3-none-any.whl", hash = "sha256:566e2bb2135e144e66ccd390affbe4504a2e96c25ef16260843b9680326cadc9"}, - {file = "xdoctest-0.15.8-py3-none-any.whl", hash = "sha256:80a57af2f8ca709ab9da111ab3b16ec474f11297b9efcc34709a2c3e56ed9ce6"}, - {file = "xdoctest-0.15.8.tar.gz", hash = "sha256:ddd128780593161a7398fcfefc49f5f6dfe4c2eb2816942cb53768d43bcab7b9"}, + {file = "xdoctest-0.15.9-py2.py3-none-any.whl", hash = "sha256:0aa507cd2260e8d88adf1f8ef93d1710b78f2c0c21f007ea95562a8f3be7cd71"}, + {file = "xdoctest-0.15.9-py3-none-any.whl", hash = "sha256:1c7a713cab41ec50e0ebca1ad5a8e02c2202f1b81f963fa970fec9c87bbcd4f7"}, + {file = "xdoctest-0.15.9.tar.gz", hash = "sha256:84b00921d9fd6df774b1c5f23a96c65cc35ce78147679b31af95507670547655"}, ] zipp = [ {file = "zipp-3.4.1-py3-none-any.whl", hash = "sha256:51cb66cc54621609dd593d1787f286ee42a5c0adbb4b29abea5a63edc3e03098"}, diff --git a/pyproject.toml b/pyproject.toml index f989ff5..81ee0e5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,6 +50,7 @@ Pygments = "^2.9.0" requests-mock = "^1.9.3" flake8-black = "^0.2.3" flake8-import-order = "^0.18.1" +rope = "^0.20.1" [tool.poetry.scripts] lep-downloader = "lep_downloader.__main__:main" From 10a5126196dabc683a465d89b54a1ad9b76910ef Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sat, 25 Sep 2021 08:48:30 +0300 Subject: [PATCH 27/54] feat(parser): :sparkles: Parse episode page (date and episode number) Add LepEpisode class (with a couple of basic attrs) Add parsing functions for episode date and number Add replacing of invalid path characters for link title Add and update unit-tests to demonstrate that episode parsing (isolated) works --- src/lep_downloader/lep.py | 27 ++++++++++++++ src/lep_downloader/parser.py | 70 +++++++++++++++++++++++++++++++----- tests/test_parser.py | 39 ++++++++++++++++---- 3 files changed, 121 insertions(+), 15 deletions(-) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 2217a27..fd284bc 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -1 +1,28 @@ """LEP module for general logic and classes.""" + + +class LepEpisode: + """LEP episode class.""" + + def __init__( + self, + episode: int = 0, + date: str = "2000-01-01T00:00:00+00:00", + url: str = "", + post_title: str = "", + index: int = 0, + ) -> None: + """Default instance of LepEpisode. + + Args: + episode (int): Episode number. + date (str): Post datetime (default 2000-01-01T00:00:00+00:00). + url (str): Final location of post URL. + post_title (str): Post title, extracted from tag and safe for windows path. + index (int): Parsing index: concatenation of URL date and increment (for several posts). + """ + self.episode = episode + self.date = date + self.url = url + self.post_title = post_title + self.index = index diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index ea2c455..391c350 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -9,12 +9,18 @@ from bs4 import SoupStrainer from lep_downloader import config as conf +from lep_downloader.lep import LepEpisode deleted_links = [] regex = conf.EPISODE_LINK_RE ep_pattern = re.compile(regex, re.IGNORECASE) INVALID_PATH_CHARS_PATTERN = re.compile(conf.INVALID_PATH_CHARS_RE) +begining_digits_re = r"^\d{1,5}" +BEGINING_DIGITS_PATTERN = re.compile(begining_digits_re) + +only_div_content_main = SoupStrainer("div", id="content", role="main") + s = requests.Session() @@ -140,13 +146,59 @@ def get_archive_parsing_results(archive_url: str) -> Any: return None -def parse_single_page(url: str, session: requests.Session) -> Any: - """Returns result of parsing of single page.""" - req = session.get(url, timeout=(3.05, 27)) - req.encoding = "utf-8" - html_text = req.text +def parse_post_publish_datetime(soup: BeautifulSoup) -> str: + """Returns post datetime as string.""" + tag_entry_datetime = soup.find("time", class_="entry-date") + if tag_entry_datetime is not None: + date_value = tag_entry_datetime["datetime"] + else: + date_value = "2009-01-01T01:01:01+02:00" + return date_value + - soup_obj = BeautifulSoup(html_text, "lxml") - page_title = soup_obj.title.string - result = page_title - return result +def parse_episode_number(post_title: str) -> int: + """Returns episode number.""" + match = BEGINING_DIGITS_PATTERN.match(post_title) + if match: + return int(match.group()) + else: + return 0 + + +def parse_single_page( + url: str, + session: requests.Session, + url_title: str, +) -> dict: + """Returns a dict of parsed episode.""" + html_page = get_web_page_html_text(url, session) + + soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) + + post_title = url_title + ep_number = parse_episode_number(post_title) + post_date = parse_post_publish_datetime(soup_div) + final_location = url + + lep_ep = LepEpisode( + episode=ep_number, + date=post_date, + url=final_location, + post_title=post_title, + ) + return lep_ep.__dict__ + + +def get_parsed_episodes( + urls: List[str], + session: requests.Session, + texts: List[str], +) -> Any: + """Returns list of parsed episodes.""" + parsed_episodes: List[LepEpisode] = [] + texts_from_first_to_last = list(reversed(texts)) + for i, url in enumerate(list(reversed(urls))): + url_title = texts_from_first_to_last[i] + ep = parse_single_page(url, session, url_title) + parsed_episodes.append(ep) + return parsed_episodes diff --git a/tests/test_parser.py b/tests/test_parser.py index fea1261..955e4fd 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -249,18 +249,45 @@ def test_mocking_single_page(requests_mock: rm_Mocker) -> None: conf.ARCHIVE_URL ) all_links: t.List[str] = parsing_result[0] - + all_texts: t.List[str] = parsing_result[2] session = requests.Session() - titles = [] - for url in all_links: + parsed_episodes = [] + texts_from_first_to_last = list(reversed(all_texts)) + for i, url in enumerate(list(reversed(all_links))): + url_title = texts_from_first_to_last[i] try: requests_mock.get( url, additional_matcher=mocked_single_page_matcher, body=mock_single_page, ) - title = parser.parse_single_page(url, session) - titles.append(title) + ep = parser.parse_single_page(url, session, url_title) + parsed_episodes.append(ep) except req_mock.exceptions.NoMockAddress: pass - assert len(titles) > 15 + + assert len(parsed_episodes) > 15 + + +def test_parsing_post_datetime() -> None: + """It gets post datetime.""" + html_doc = """ + + + """ + soup = BeautifulSoup(html_doc, "lxml") + post_date = parser.parse_post_publish_datetime(soup) + excepted = "2009-04-12T15:23:33+02:00" + assert post_date == excepted + + +def test_parsing_post_datetime_without_element() -> None: + """It returns default post datetime.""" + html_doc = """ + + + """ + soup = BeautifulSoup(html_doc, "lxml") + post_date = parser.parse_post_publish_datetime(soup) + excepted = "2009-01-01T01:01:01+02:00" + assert post_date == excepted From 99942e231039693bea79dfc97f7ae67313710619 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 26 Sep 2021 08:11:53 +0300 Subject: [PATCH 28/54] refactor(parser): :recycle: Add returning of URL final location during getting response Return error text instead of raising exceptions --- src/lep_downloader/parser.py | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 391c350..48dddca 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,7 +1,7 @@ """LEP module for parsing logic.""" import copy import re -from typing import Any +from typing import Any, Dict from typing import List import requests @@ -26,22 +26,25 @@ def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: """Return HTML text of LEP archive page.""" + final_location = page_url with session: try: resp = session.get(page_url, timeout=(6, 33)) + final_location = resp.url if not resp.ok: resp.raise_for_status() - except requests.exceptions.HTTPError: - raise - except requests.exceptions.Timeout: - raise - except requests.exceptions.ConnectionError: - raise - except Exception: - raise + except requests.exceptions.HTTPError as err: + return (f"[ERROR]: {err}", final_location) + except requests.exceptions.Timeout as err: + return (f"[ERROR]: Timeout | {err}", final_location) + except requests.exceptions.ConnectionError as err: + return (f"[ERROR]: Bad request | {err}", final_location) + except Exception as err: + return (f"[ERROR]: Unhandled error | {err}", final_location) else: resp.encoding = "utf-8" - return resp.text + final_location = resp.url + return (resp.text, final_location) def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: @@ -122,7 +125,7 @@ def substitute_short_links(unique_links: List[str]) -> List[str]: def get_archive_parsing_results(archive_url: str) -> Any: """Return Tuple with valid episode links and discarded links.""" - html_page = get_web_page_html_text(archive_url, s) + html_page = get_web_page_html_text(archive_url, s)[0] only_div_entry_content = SoupStrainer("div", class_="entry-content") soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_entry_content) @@ -171,14 +174,13 @@ def parse_single_page( url_title: str, ) -> dict: """Returns a dict of parsed episode.""" - html_page = get_web_page_html_text(url, session) + html_page, final_location = get_web_page_html_text(url, session) soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) post_title = url_title ep_number = parse_episode_number(post_title) post_date = parse_post_publish_datetime(soup_div) - final_location = url lep_ep = LepEpisode( episode=ep_number, @@ -193,7 +195,7 @@ def get_parsed_episodes( urls: List[str], session: requests.Session, texts: List[str], -) -> Any: +) -> List[Dict[str, Any]]: """Returns list of parsed episodes.""" parsed_episodes: List[LepEpisode] = [] texts_from_first_to_last = list(reversed(texts)) From 7e55d60dfe92b00dbea28dcd7faf72c1fb085cb4 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 26 Sep 2021 08:14:19 +0300 Subject: [PATCH 29/54] test(parser): :white_check_mark: Add tests to check final location after redirects Update tests for differend exceptions during getting response --- tests/test_parser.py | 73 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 63 insertions(+), 10 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 955e4fd..a288342 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -2,7 +2,7 @@ import typing as t from pathlib import Path -import pytest +# import pytest import requests import requests_mock as req_mock from bs4 import BeautifulSoup @@ -44,24 +44,77 @@ def test_getting_success_page_response(requests_mock: rm_Mocker) -> None: """It gets HTML content as text.""" requests_mock.get(req_mock.ANY, text="Response OK") - resp = parser.get_web_page_html_text(conf.ARCHIVE_URL, s) + resp = parser.get_web_page_html_text(conf.ARCHIVE_URL, s)[0] assert resp == "Response OK" def test_getting_404_page_response(requests_mock: rm_Mocker) -> None: - """It raises HTTPError if page is not found.""" + """It handles HTTPError if page is not found.""" requests_mock.get(req_mock.ANY, text="Response OK", status_code=404) - with pytest.raises(requests.exceptions.HTTPError) as exc_info: - parser.get_web_page_html_text(conf.ARCHIVE_URL, s) - assert exc_info.typename == "HTTPError" + resp = parser.get_web_page_html_text("http://example.com", s)[0] + assert "[ERROR]" in resp + assert "404" in resp def test_getting_503_page_response(requests_mock: rm_Mocker) -> None: - """It raises HTTPError if service is unavailable.""" + """It handle HTTPError if service is unavailable.""" requests_mock.get(req_mock.ANY, text="Response OK", status_code=503) - with pytest.raises(requests.exceptions.HTTPError) as exc_info: - parser.get_web_page_html_text(conf.ARCHIVE_URL, s) - assert exc_info.typename == "HTTPError" + resp = parser.get_web_page_html_text("http://example.com", s)[0] + assert "[ERROR]" in resp + assert "503" in resp + + +def test_timeout_error(requests_mock: rm_Mocker) -> None: + """It handle any Timeout exception for page.""" + requests_mock.get(req_mock.ANY, exc=requests.exceptions.Timeout) + resp = parser.get_web_page_html_text("http://example.com", s)[0] + assert "[ERROR]" in resp + assert "Timeout" in resp + + +def test_connection_error(requests_mock: rm_Mocker) -> None: + """It handles ConnectionError exception for bad request.""" + requests_mock.get(req_mock.ANY, exc=requests.exceptions.ConnectionError) + resp = parser.get_web_page_html_text("http://example.com", s)[0] + assert "[ERROR]" in resp + assert "Bad request" in resp + + +def test_unknown_error(requests_mock: rm_Mocker) -> None: + """It handles any other exceptions during attempt to get response from URL.""" + requests_mock.get(req_mock.ANY, exc=Exception("Something Bad")) + resp = parser.get_web_page_html_text("http://example.com", s)[0] + assert "[ERROR]" in resp + assert "Unhandled error" in resp + + +def test_final_location_for_good_redirect(requests_mock: rm_Mocker) -> None: + """It retrieves final location during redirect.""" + requests_mock.get( + "https://re.direct", + text="Rederecting to...", + status_code=301, + headers={"Location": "https://final.location/"} + ) + requests_mock.get("https://final.location", text="Final location") + text, final_location = parser.get_web_page_html_text("https://re.direct", s) + assert text == "Final location" + assert final_location == "https://final.location/" + + +def test_final_location_for_bad_redirect(requests_mock: rm_Mocker) -> None: + """It retrieves final location during redirect.""" + requests_mock.get( + "https://re.direct", + text="Rederecting to...", + status_code=301, + headers={"Location": "https://bad.final.location/"} + ) + requests_mock.get("https://bad.final.location/", text="Final location", status_code=404) + text, final_location = parser.get_web_page_html_text("https://re.direct", s) + assert "[ERROR]" in text + assert "bad.final.location" in text + assert final_location == "https://bad.final.location/" def test_retrieve_all_links_from_soup() -> None: From eae83797f1adeac0bb4fe97c6d5e9a8237c810e6 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 26 Sep 2021 12:47:15 +0300 Subject: [PATCH 30/54] feat(parser): :sparkles: Add index generating for post URL (for quick search / reference in the future) --- src/lep_downloader/parser.py | 37 ++++++++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 4 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 48dddca..735b4a7 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -21,6 +21,8 @@ only_div_content_main = SoupStrainer("div", id="content", role="main") +post_indexes = [] + s = requests.Session() @@ -155,7 +157,7 @@ def parse_post_publish_datetime(soup: BeautifulSoup) -> str: if tag_entry_datetime is not None: date_value = tag_entry_datetime["datetime"] else: - date_value = "2009-01-01T01:01:01+02:00" + date_value = "1999-01-01T01:01:01+02:00" return date_value @@ -168,18 +170,44 @@ def parse_episode_number(post_title: str) -> int: return 0 +def generate_post_index(post_url: str, indexes: List[int]) -> int: + """Returns index number for post.""" + match = ep_pattern.match(post_url) + if match: + groups_dict = match.groupdict() + date_from_url = groups_dict["date"] + date_numbers = date_from_url.replace("/", "") + + number_at_same_day = 1 + index_as_string = date_numbers + str(number_at_same_day).zfill(2) + new_index = int(index_as_string) + exists = False + while not exists: + if new_index in indexes: + new_index += 1 + else: + indexes.append(new_index) + exists = True + return new_index + else: + return 0 + + def parse_single_page( url: str, session: requests.Session, url_title: str, -) -> dict: +) -> Dict[str, Any]: """Returns a dict of parsed episode.""" + # TODO: Add conditions for response with ERRORs html_page, final_location = get_web_page_html_text(url, session) - soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) - + # TODO: Add condition if index == 0 (not episode link) + index = generate_post_index(final_location, post_indexes) post_title = url_title ep_number = parse_episode_number(post_title) + + soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) post_date = parse_post_publish_datetime(soup_div) lep_ep = LepEpisode( @@ -187,6 +215,7 @@ def parse_single_page( date=post_date, url=final_location, post_title=post_title, + index=index, ) return lep_ep.__dict__ From e1b6617256e167637fbafde19e491577cd63eb3f Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Sun, 26 Sep 2021 12:48:16 +0300 Subject: [PATCH 31/54] test(parser): :white_check_mark: Add two tests to check index generation --- tests/test_parser.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/test_parser.py b/tests/test_parser.py index a288342..e2c34ba 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -344,3 +344,23 @@ def test_parsing_post_datetime_without_element() -> None: post_date = parser.parse_post_publish_datetime(soup) excepted = "2009-01-01T01:01:01+02:00" assert post_date == excepted + + +def test_generating_new_post_index() -> None: + """It generates index from URL.""" + indexes = [] + test_url = "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/" + index = parser.generate_post_index(test_url, indexes) + expected_index = int("2009041201") + assert index == expected_index + + +def test_generating_new_post_index_on_same_day() -> None: + """It generates index from URL if posts are on the same day.""" + indexes = [2009041201] + test_url = "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/" + index = parser.generate_post_index(test_url, indexes) + expected_index = int("2009041202") + assert index == expected_index + index2 = parser.generate_post_index(test_url, indexes) + assert index2 == expected_index + 1 From 3d31f30f7e0a93d58b37affb923a6c920fcbd67f Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 27 Sep 2021 12:28:11 +0300 Subject: [PATCH 32/54] feat: Add 'admin_note' attribute to LepEpisode class --- src/lep_downloader/lep.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index fd284bc..7ac756f 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -11,6 +11,7 @@ def __init__( url: str = "", post_title: str = "", index: int = 0, + admin_note: str = "", ) -> None: """Default instance of LepEpisode. @@ -20,9 +21,11 @@ def __init__( url (str): Final location of post URL. post_title (str): Post title, extracted from tag and safe for windows path. index (int): Parsing index: concatenation of URL date and increment (for several posts). + admin_note (str): Note for administrator and storing error message (for bad response) """ self.episode = episode self.date = date self.url = url self.post_title = post_title self.index = index + self.admin_note = admin_note From ad7ec11fa823b265e7f1a506cc056b1b54f9b208 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 27 Sep 2021 12:30:31 +0300 Subject: [PATCH 33/54] feat(parser): Add logic for bad response of parsing page --- src/lep_downloader/parser.py | 41 ++++++++++++++++++++++++------------ 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 735b4a7..0a3f952 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,7 +1,7 @@ """LEP module for parsing logic.""" import copy import re -from typing import Any, Dict +from typing import Any, Dict, Optional from typing import List import requests @@ -29,6 +29,7 @@ def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: """Return HTML text of LEP archive page.""" final_location = page_url + is_url_ok = False with session: try: resp = session.get(page_url, timeout=(6, 33)) @@ -36,17 +37,18 @@ def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: if not resp.ok: resp.raise_for_status() except requests.exceptions.HTTPError as err: - return (f"[ERROR]: {err}", final_location) + return (f"[ERROR]: {err}", final_location, is_url_ok) except requests.exceptions.Timeout as err: - return (f"[ERROR]: Timeout | {err}", final_location) + return (f"[ERROR]: Timeout | {err}", final_location, is_url_ok) except requests.exceptions.ConnectionError as err: - return (f"[ERROR]: Bad request | {err}", final_location) + return (f"[ERROR]: Bad request | {err}", final_location, is_url_ok) except Exception as err: - return (f"[ERROR]: Unhandled error | {err}", final_location) + return (f"[ERROR]: Unhandled error | {err}", final_location, is_url_ok) else: resp.encoding = "utf-8" final_location = resp.url - return (resp.text, final_location) + is_url_ok = True + return (resp.text, final_location, is_url_ok) def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: @@ -197,15 +199,25 @@ def parse_single_page( url: str, session: requests.Session, url_title: str, -) -> Dict[str, Any]: +) -> Optional[Dict[str, Any]]: """Returns a dict of parsed episode.""" - # TODO: Add conditions for response with ERRORs - html_page, final_location = get_web_page_html_text(url, session) + html_page, final_location, is_url_ok = get_web_page_html_text(url, session) - # TODO: Add condition if index == 0 (not episode link) index = generate_post_index(final_location, post_indexes) - post_title = url_title - ep_number = parse_episode_number(post_title) + if index == 0: + return None + + ep_number = parse_episode_number(url_title) + + if not is_url_ok: + bad_ep = LepEpisode( + episode=ep_number, + url=final_location, + post_title=url_title, + index=index, + admin_note=html_page[:50], + ) + return bad_ep.__dict__ soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) post_date = parse_post_publish_datetime(soup_div) @@ -214,7 +226,7 @@ def parse_single_page( episode=ep_number, date=post_date, url=final_location, - post_title=post_title, + post_title=url_title, index=index, ) return lep_ep.__dict__ @@ -231,5 +243,6 @@ def get_parsed_episodes( for i, url in enumerate(list(reversed(urls))): url_title = texts_from_first_to_last[i] ep = parse_single_page(url, session, url_title) - parsed_episodes.append(ep) + if ep is not None: + parsed_episodes.append(ep) return parsed_episodes From 0f613497e96a0716befb166030536d9e7067eed8 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 27 Sep 2021 12:34:31 +0300 Subject: [PATCH 34/54] test(parser): :white_check_mark: Update tests taking into account response status for parsing page Add test to check return value (None) for non-episode link Black formatting changes --- tests/test_parser.py | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index e2c34ba..8e8ee69 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -94,10 +94,14 @@ def test_final_location_for_good_redirect(requests_mock: rm_Mocker) -> None: "https://re.direct", text="Rederecting to...", status_code=301, - headers={"Location": "https://final.location/"} + headers={"Location": "https://final.location/"}, ) requests_mock.get("https://final.location", text="Final location") - text, final_location = parser.get_web_page_html_text("https://re.direct", s) + text, final_location, is_url_ok = parser.get_web_page_html_text( + "https://re.direct", + s, + ) + assert is_url_ok assert text == "Final location" assert final_location == "https://final.location/" @@ -108,10 +112,18 @@ def test_final_location_for_bad_redirect(requests_mock: rm_Mocker) -> None: "https://re.direct", text="Rederecting to...", status_code=301, - headers={"Location": "https://bad.final.location/"} + headers={"Location": "https://bad.final.location/"}, + ) + requests_mock.get( + "https://bad.final.location/", + text="Final location", + status_code=404, + ) + text, final_location, is_url_ok = parser.get_web_page_html_text( + "https://re.direct", + s, ) - requests_mock.get("https://bad.final.location/", text="Final location", status_code=404) - text, final_location = parser.get_web_page_html_text("https://re.direct", s) + assert not is_url_ok assert "[ERROR]" in text assert "bad.final.location" in text assert final_location == "https://bad.final.location/" @@ -342,7 +354,7 @@ def test_parsing_post_datetime_without_element() -> None: """ soup = BeautifulSoup(html_doc, "lxml") post_date = parser.parse_post_publish_datetime(soup) - excepted = "2009-01-01T01:01:01+02:00" + excepted = "1999-01-01T01:01:01+02:00" assert post_date == excepted @@ -364,3 +376,16 @@ def test_generating_new_post_index_on_same_day() -> None: assert index == expected_index index2 = parser.generate_post_index(test_url, indexes) assert index2 == expected_index + 1 + + +def test_parsing_non_episode_link(requests_mock: rm_Mocker) -> None: + """It returns None (empty episode) for none episode link.""" + non_episode_url = "https://teacherluke.co.uk/premium/archive-comment-section/" + requests_mock.get( + non_episode_url, + text="No need to parse this page", + status_code=200, + ) + link_title = "Some title" + episode = parser.parse_single_page(non_episode_url, s, link_title) + assert episode is None From 70f3a3bdee7c8b90a43ce680973e0e45bcccdfde Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Mon, 27 Sep 2021 12:57:22 +0300 Subject: [PATCH 35/54] style(parser): :label: Fix 'mypy' and 'pre-commit' errors --- src/lep_downloader/parser.py | 9 ++++++--- tests/test_parser.py | 6 +++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 0a3f952..48e0b75 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,8 +1,10 @@ """LEP module for parsing logic.""" import copy import re -from typing import Any, Dict, Optional +from typing import Any +from typing import Dict from typing import List +from typing import Optional import requests from bs4 import BeautifulSoup @@ -21,7 +23,7 @@ only_div_content_main = SoupStrainer("div", id="content", role="main") -post_indexes = [] +post_indexes: List[int] = [] s = requests.Session() @@ -155,6 +157,7 @@ def get_archive_parsing_results(archive_url: str) -> Any: def parse_post_publish_datetime(soup: BeautifulSoup) -> str: """Returns post datetime as string.""" + date_value: str = "" tag_entry_datetime = soup.find("time", class_="entry-date") if tag_entry_datetime is not None: date_value = tag_entry_datetime["datetime"] @@ -238,7 +241,7 @@ def get_parsed_episodes( texts: List[str], ) -> List[Dict[str, Any]]: """Returns list of parsed episodes.""" - parsed_episodes: List[LepEpisode] = [] + parsed_episodes: List[Dict[str, Any]] = [] texts_from_first_to_last = list(reversed(texts)) for i, url in enumerate(list(reversed(urls))): url_title = texts_from_first_to_last[i] diff --git a/tests/test_parser.py b/tests/test_parser.py index 8e8ee69..63f7566 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -2,7 +2,6 @@ import typing as t from pathlib import Path -# import pytest import requests import requests_mock as req_mock from bs4 import BeautifulSoup @@ -11,6 +10,7 @@ from lep_downloader import config as conf from lep_downloader import parser +# import pytest OFFLINE_HTML_DIR = Path( Path(__file__).resolve().parent, @@ -360,7 +360,7 @@ def test_parsing_post_datetime_without_element() -> None: def test_generating_new_post_index() -> None: """It generates index from URL.""" - indexes = [] + indexes: t.List[int] = [] test_url = "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/" index = parser.generate_post_index(test_url, indexes) expected_index = int("2009041201") @@ -369,7 +369,7 @@ def test_generating_new_post_index() -> None: def test_generating_new_post_index_on_same_day() -> None: """It generates index from URL if posts are on the same day.""" - indexes = [2009041201] + indexes: t.List[int] = [2009041201] test_url = "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/" index = parser.generate_post_index(test_url, indexes) expected_index = int("2009041202") From 76def0f9a4415f4eaf3dc940b4d4ad0f401af0fc Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 28 Sep 2021 11:42:37 +0300 Subject: [PATCH 36/54] feat(parser): :sparkles: Add 'parsing_utc' attribute for LepEpisode class Add storing parsing datetime in each episode --- src/lep_downloader/lep.py | 3 +++ src/lep_downloader/parser.py | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 7ac756f..144269c 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -10,6 +10,7 @@ def __init__( date: str = "2000-01-01T00:00:00+00:00", url: str = "", post_title: str = "", + parsing_utc: str = "", index: int = 0, admin_note: str = "", ) -> None: @@ -20,6 +21,7 @@ def __init__( date (str): Post datetime (default 2000-01-01T00:00:00+00:00). url (str): Final location of post URL. post_title (str): Post title, extracted from tag and safe for windows path. + parsing_utc (str): Parsing datetime in UTC timezone (with microseconds). index (int): Parsing index: concatenation of URL date and increment (for several posts). admin_note (str): Note for administrator and storing error message (for bad response) """ @@ -27,5 +29,6 @@ def __init__( self.date = date self.url = url self.post_title = post_title + self.parsing_utc = parsing_utc self.index = index self.admin_note = admin_note diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 48e0b75..9de9eca 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,6 +1,8 @@ """LEP module for parsing logic.""" import copy import re +from datetime import datetime +from datetime import timezone from typing import Any from typing import Dict from typing import List @@ -204,6 +206,9 @@ def parse_single_page( url_title: str, ) -> Optional[Dict[str, Any]]: """Returns a dict of parsed episode.""" + current_date_utc = datetime.now(timezone.utc) + parsing_date = current_date_utc.strftime(r"%Y-%m-%dT%H:%M:%S.%fZ") + html_page, final_location, is_url_ok = get_web_page_html_text(url, session) index = generate_post_index(final_location, post_indexes) @@ -217,6 +222,7 @@ def parse_single_page( episode=ep_number, url=final_location, post_title=url_title, + parsing_utc=parsing_date, index=index, admin_note=html_page[:50], ) @@ -230,6 +236,7 @@ def parse_single_page( date=post_date, url=final_location, post_title=url_title, + parsing_utc=parsing_date, index=index, ) return lep_ep.__dict__ From 2eaaf24179db0422632e3aaff32bfe6b577eb14a Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 28 Sep 2021 11:46:18 +0300 Subject: [PATCH 37/54] test(parser): :white_check_mark: Update test to check parsing all links from list Add non-episode HTML and link to check when parsed episode is empty Return 'fail_under' = 100 in pyroject.toml --- pyproject.toml | 2 +- ...& Comment Section _ (premium archive).html | 645 ++++++++++++++++++ tests/test_parser.py | 44 +- 3 files changed, 674 insertions(+), 17 deletions(-) create mode 100644 tests/fixtures/ep_htmls/2021-09-28_10-44-00 Archive & Comment Section _ (premium archive).html diff --git a/pyproject.toml b/pyproject.toml index 81ee0e5..91916f6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -64,7 +64,7 @@ source = ["lep_downloader"] [tool.coverage.report] show_missing = true -fail_under = 85 +fail_under = 100 [tool.mypy] strict = true diff --git a/tests/fixtures/ep_htmls/2021-09-28_10-44-00 Archive & Comment Section _ (premium archive).html b/tests/fixtures/ep_htmls/2021-09-28_10-44-00 Archive & Comment Section _ (premium archive).html new file mode 100644 index 0000000..031b4c8 --- /dev/null +++ b/tests/fixtures/ep_htmls/2021-09-28_10-44-00 Archive & Comment Section _ (premium archive).html @@ -0,0 +1,645 @@ + + + + + + + + + +Archive & Comment Section | Luke’s ENGLISH Podcast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+
+ + +
+
+

Archive & Comment Section

+
+ +
+

This is the archive of premium episodes & content.

+

The comment section is at the bottom of the page.

+

Sign up / Sign in to access these episodes at www.teacherluke.co.uk/premium

+

GET PREMIUM PDFs with NORMAL FONT SIZE – CLICK HERE

+

[Video] Welcome to LEP Premium

P01 Grammar / Past Habits – Language Review for LEP521 Talking about Pets with James

+

P01 Pronunciation Drills Video

+

P02 [Part 1] Vocabulary / Language Review for LEP522: Summer Schools with Raphael

P02 [Part 2] Vocabulary / Language Review for LEP522: Summer Schools with Raphael

P02 Pronunciation Drills Video

P03 Vocabulary / Language Review for LEP528. Royal Wedding with Mum

P03 [Video] Vocabulary Language Review for LEP528. Royal Wedding with Mum

P03 Pronunciation Drills Video

P04 Vocabulary / Language Review for LEP529 – The M Word with Andy Johnson – Marathon / Injuries / Pain / Muscles

P04 Pronunciation Drills Video

[Video] Reflecting on episode 536 with Olly Richards – Lessons about Learning a Language

P05 [Part 1] Vocabulary / Language Review for LEP540

P05 [Part 2] Vocabulary / Language Review for LEP540

P05 Pronunciation Drills Video

How to get premium PDFs with normal font size (listen for password) – www.teacherluke.co.uk/pdfs

[Premium] Insect Idioms & Expressions

P06 [1] Phrasal Verbs / Verb Collocations from LEP#464 #465

P06 [2] Phrasal Verbs / Verb Collocations from LEP#464 #465

P06 [3] Adjective Phrases / Noun Phrases / Prepositional Phrases / Idioms from LEP#464 #465

+

P06 Pronunciation Drills Video

+

+

P07 [1/2] The Grammar of Gandalf – Verb Tense Review + more

P07 [2/2] The Grammar of Gandalf – Verb Tense Review + more

P07 [3] Pronunciation Drills – The Grammar of Gandalf – Verb Tense Review + More

+

+

P07 Pronunciation Drills Video

+

+

557. I’m a Rambling Guy (Monologue – Autumn 2018) Video Version

P08 English phrases my wife has learned from me (Parts 1 – 5)





P08 Pronunciation Drills Video – FACIAL EXPRESSIONS & BODY LANGUAGE

P09 Language Review for LEP 547-549 British Comedy: Alan Partridge (Parts 1-3)



P09 Pronunciation Drills Video

P10 (Part 1) Language Review for LEP 569&570 With Zdenek Lukas

+

P10 (Part 2) Language Review for LEP 569&570 With Zdenek Lukas

+

P10 (Part 3) Language Review for LEP 569&570 With Zdenek Lukas

+

P10 (Part 4) Language Review for LEP 569&570 with Zdenek Lukas

+

P10 Pronunciation Drills Video

+

+

P11 [1/4] Language Review for LEP 575 British Comedy: Paul Chowdhry

+

P11 [2/4] Language Review for LEP575 The Jungle of Disgusting Language

+

P11 [3/4] Language Review for LEP 575 British Comedy: Paul Chowdhry

+

P11 [4/4] Language Test & Pronunciation Drills

+

How to improve your English to the level of a native speaker

+

P11 Pronunciation Drills Video

+

P12 [1/5] Grammar: Present Perfect Simple – Key Concepts & Time Expressions

+

P12 [2/5] Grammar: Present Perfect Simple vs Past Simple

+

P12 [3/5] Grammar: Present Perfect Simple vs Present Perfect Continuous

+

P12 [4/5] Grammar: Past perfect, Present Simple and Present Continuous

+

P12 [5/5] Grammar: Present Perfect Exercises, Tests and Pronunciation Drills

+

P12 Pronunciation Drills Video

+

P13 [1] Prepositions / Get / Phrases – Language Review for LEP 592 (It always seems impossible until it’s done)

+

P13 [2] Prepositions / Get / Phrases – Test 1 & Pronunciation Drills

+

P13 [3] Prepositions / Get / Phrases – More Language Review for LEP 592

+


P13 [4] Test 2 & Pronunciation Drills

+

P14 [1/4] Language Review for LEP576 Talking about Comedy, Music and Books with James

+

P14 [2/4] Test & Pronunciation Drills (Connected Speech, Sentence Stress)

+

P14 [3/4] Language Review for LEP576 Talking about Comedy, Music and Books with James

+

P14 [4/4] Test & Pronunciation Drills (Sentence Stress)

+

P15 Bad Science [Part 1] Topic, Discussion, Article

+

P15 Bad Science [Part 2] Language Analysis & Vocabulary Review

+

P15 Bad Science [Part 3] Language Analysis & Vocabulary Review

+

P15 Bad Science [Part 4] Test and Pronunciation Drills

+


611. Top 10 Jokes from Edinburgh Fringe 2019

+

[VIDEO] 612. Another Murder Mystery Detective Story (Part 1)

+

[VIDEO] 613. [1-2] Another Murder Mystery Detective Story (Part 2)

[VIDEO] 613. [2-2] Another Murder Mystery Detective Story (Part 2)

+

[VIDEO] 614. Another Murder Mystery Detective Story (Part 3)

+

About Premium Videos

+

P16 [1/3] Inversion and Sentence Structure in English

+

P16 [2/3] Inversion and Sentence Structure in English

+

P16 [3/3] Test & Pronunciation Drills

+

P17 [1/3] Vocabulary Review for LEP#593

+

P17 [2/3] Vocabulary Review for LEP#593

+

P17 [3/3] Test & Pronunciation Drills

+


P18 [1/2] Vocabulary from LEP#630 The English Guy with his own Sitcom on Japanese TV

+

P18 [2/2] Memory Test & Pronunciation Drills

+

Pronunciation Video: Schwa Sound /ə/ Weak Forms /ə/ Unstressed Syllables

+

P19 [1/3] 15+ Vocab Items from LEP#577. (UK vs US Slang Game with Jennifer)

P19 [2/3] 15+ Vocab Items from LEP#577. (UK vs US Slang Game with Jennifer)

+

+

P19 [3/3] Memory Test & Pronunciation Drills

+


P20 Grammar: Articles (not a glamourous subject) Part 1

+

P20 Grammar: Articles (not a glamourous subject) Part 2

P20 Grammar: Articles (not a glamourous subject) Part 3

P20 Grammar: Articles (not a glamourous subject) Part 4

+ + + +
+ + +
+ +

+

P20 Grammar: Articles (not a glamourous subject) Part 5

+


P21 [1/3] Common Errors: Despite / In spite of / Although / -ought words

+

P21 [2/3] Test / Practice Exercise / Luke’s Comments

P21 [3/3] Pronunciation Drills

+

P22 [1] What did I say in episode 649? Vocabulary Review

+

+

P22 [2] What did I say in episode 649? Vocabulary Review

+


P22 [3] Memory Test & Pronunciation Drills for P22 1 & 2

+

P22 [4] What did I say in Episode 649? Vocabulary Review

+

P22 [5] What did I say in episode 649? Vocabulary Review (with hiccups)

+

P22 [6] Memory Test & Pronunciation Drills (for Target Language in Parts 4&5)

P23 [1/3] VOCAB BUILDER: Devil (Idioms & Expressions)

+

P23 [2/3] VOCAB BUILDER: Devil (Idioms & Expressions)

+

P23 [3/3] VOCAB BUILDER: Devil (Memory Test & Pronunciation Drills

How to use LEP Premium to Improve Your English

+

P24 [Part 1] Homophones / Jokes

+


P24 [Part 2] Memory Test & Pronunciation Drills for Part 1

+

P24 [Part 3] Homophones / Jokes

+


P24 [Part 4] Memory Test & Pronunciation Drills for Part 3

+

P24 [Part 5] Homophones / Jokes

+

P24 [Part 6] Memory Test & Pronunciation Drills for Part 5

+

+

P24 [Part 7] Homophones / Jokes

+

P24 [Part 8] Memory Test & Pronunciation Drills for part 7

+

P24 [Part 9] Homophones / Jokes (Vocab Builder, Spelling & Pronunciation)

+

P24 [Part 10] Memory Test & Pronunciation Drills for part 9

+

P24 [Part 11] Jokes with Homophones

+

P24 [Part 12] Memory Test & Pronunciation Drills for part 11

+

P25 Pronunciation Drills from LEP682 – Non-Standard English Accents vs RP

+

P26 Introduction – Luke’s Stand Up Comedy Show Live at The Comedy Store in London

P26 Luke’s Stand-Up Comedy Show (Live at The Comedy Store in London)

+

P27 [1/8] Error Correction from WISBOLEP – Vocabulary, Grammar & Pronunciation

+

P27 [2/8] Memory Test & Pronunciation Drills

+

P27 [3/8] Error Correction from WISBOLEP – Grammar, Vocabulary & Pronunciation

+

P27 [4/8] Memory Test & Pronunciation Drills + random accents

+


P27 [5/8] Error Correction – Grammar & Vocabulary

+

P27 [6/8] Memory Test & Pronunciation Drills

+

P27 [7/8] Error Correction: Pronunciation – Word stress, sentence stress & more

+

P27 [8/8] A Premium Ramble: No pressure – let’s just have a break!

+

P28 [1/2] What did Lucy Say? 50+ Words and phrases from LEP#693

+

P28 [2/2] What did Lucy Say? Memory Test & Pronunciation Drills

+

P29 [Part 1] What did Rick say? Vocabulary Review for LEP#704 The Rick Thompson Report

+

+

P29 [Part 2] Memory Test / “Listen & Repeat” Pronunciation Drills for Part 1

+

P29 [Part 3] What did Rick say? Vocabulary Review for LEP#704 The Rick Thompson Report

+

+

P29 [Part 4] What did Rick say? Memory Test & Pronunciation Drills for Part 3

+

P29 [Part 5] What did Rick say? Vocabulary Review for LEP#704 The Rick Thompson Report

+

P29 [Part 6] Memory Test & Pronunciation Drills for part 5

+

P29 [Part 7] What did Rick say? Vocabulary Review for LEP#704 The Rick Thompson Report

+

P29 [Part 8] Memory Test & Pronunciation Drills (featuring Rick Thompson himself)

+

P30 Pronunciation Coach: Chunking [Audio Version]

+

P30 Pronunciation Coach: Chunking [Video Version]

+

P31 [1/6] What did Gill say? Vocabulary Review for LEP#717 Gill’s Book Club

+

P31 [2/6] What did Gill say? Memory Test & Pronunciation Drills

+

P31 [3/6] What did Gill say? Vocabulary Review for LEP#717 Gill’s Book Club

+

P31 [4/6] What did Gill say? Memory Test & Pronunciation Drills

+

GET PREMIUM PDFs with NORMAL FONT SIZE – CLICK HERE

+ + +

+ + + +
+ + +
+ +
+
+
+
+ +
+ +
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + diff --git a/tests/test_parser.py b/tests/test_parser.py index 63f7566..0fd6d89 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,5 +1,6 @@ """Test cases for the parser module.""" import typing as t +from datetime import datetime from pathlib import Path import requests @@ -10,7 +11,7 @@ from lep_downloader import config as conf from lep_downloader import parser -# import pytest + OFFLINE_HTML_DIR = Path( Path(__file__).resolve().parent, @@ -34,6 +35,7 @@ "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/": "2021-08-11_lep-e711-page-content-pretty.html", "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%f0%9f%87%a9%f0%9f%87%aa-wisbolep-runner-up/": "2021-09-07_09-14-02 teacherluke.co.uk _2021_04_11_714-robin-from-hamburg-🇩🇪-wisbolep-run.html", "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/": "2021-08-11_lep-e733-page-content-pretty.html", + "https://teacherluke.co.uk/premium/archive-comment-section/": "2021-09-28_10-44-00 Archive & Comment Section _ (premium archive).html", # None-episode link } MAPPING_KEYS: t.List[str] = [*LINK_FILE_MAPPING] @@ -317,21 +319,31 @@ def test_mocking_single_page(requests_mock: rm_Mocker) -> None: all_texts: t.List[str] = parsing_result[2] session = requests.Session() parsed_episodes = [] - texts_from_first_to_last = list(reversed(all_texts)) - for i, url in enumerate(list(reversed(all_links))): - url_title = texts_from_first_to_last[i] - try: - requests_mock.get( - url, - additional_matcher=mocked_single_page_matcher, - body=mock_single_page, - ) - ep = parser.parse_single_page(url, session, url_title) - parsed_episodes.append(ep) - except req_mock.exceptions.NoMockAddress: - pass - - assert len(parsed_episodes) > 15 + + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + + parsed_episodes = parser.get_parsed_episodes(all_links, session, all_texts) + + non_episode_list = parser.get_parsed_episodes( + ["https://teacherluke.co.uk/premium/archive-comment-section/"], + session, + ["Non-episode link"], + ) + assert len(non_episode_list) == 0 + + assert len(parsed_episodes) > 781 + + min_date = datetime.strptime("2009-03-03T03:03:03+02:00", "%Y-%m-%dT%H:%M:%S%z") + mocked_episodes = [ + ep + for ep in parsed_episodes + if datetime.strptime(ep["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date + ] + assert len(mocked_episodes) > 15 def test_parsing_post_datetime() -> None: From 271f646fc2a3f668e3a77be7b7fa9a97d86f7dc4 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 29 Sep 2021 17:31:45 +0300 Subject: [PATCH 38/54] feat(parser): :sparkles: Add function to parsing links to episode audio (parts) Add attributes 'post_type' and 'audios' for LepEpisode class --- src/lep_downloader/lep.py | 8 +++++- src/lep_downloader/parser.py | 55 ++++++++++++++++++++++++++++++++++-- 2 files changed, 59 insertions(+), 4 deletions(-) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 144269c..440e164 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -1,5 +1,5 @@ """LEP module for general logic and classes.""" - +import typing as t class LepEpisode: """LEP episode class.""" @@ -10,8 +10,10 @@ def __init__( date: str = "2000-01-01T00:00:00+00:00", url: str = "", post_title: str = "", + post_type: str = "", parsing_utc: str = "", index: int = 0, + audios: t.List[t.List[str]] = [], admin_note: str = "", ) -> None: """Default instance of LepEpisode. @@ -21,6 +23,8 @@ def __init__( date (str): Post datetime (default 2000-01-01T00:00:00+00:00). url (str): Final location of post URL. post_title (str): Post title, extracted from tag and safe for windows path. + post_type (str): Post type ("AUDIO", "TEXT", etc.). + audios (list): List of links lists (for multi-part episodes). parsing_utc (str): Parsing datetime in UTC timezone (with microseconds). index (int): Parsing index: concatenation of URL date and increment (for several posts). admin_note (str): Note for administrator and storing error message (for bad response) @@ -29,6 +33,8 @@ def __init__( self.date = date self.url = url self.post_title = post_title + self.post_type = post_type + self.audios = audios self.parsing_utc = parsing_utc self.index = index self.admin_note = admin_note diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 9de9eca..3a4496f 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -10,6 +10,7 @@ import requests from bs4 import BeautifulSoup +from bs4.element import Tag from bs4 import SoupStrainer from lep_downloader import config as conf @@ -22,8 +23,14 @@ INVALID_PATH_CHARS_PATTERN = re.compile(conf.INVALID_PATH_CHARS_RE) begining_digits_re = r"^\d{1,5}" BEGINING_DIGITS_PATTERN = re.compile(begining_digits_re) +audio_link_re = r"download\b|audio\s|click\s" +AUDIO_LINK_PATTERN = re.compile(audio_link_re, re.IGNORECASE) -only_div_content_main = SoupStrainer("div", id="content", role="main") +only_article_content = SoupStrainer("article") +only_a_tags_with_mp3 = SoupStrainer( + "a", + href=re.compile(r"^(?!.*boos/(2794795|3727124))(?!.*uploads).*\.mp3$", re.I), +) post_indexes: List[int] = [] @@ -200,6 +207,41 @@ def generate_post_index(post_url: str, indexes: List[int]) -> int: return 0 +def appropriate_tag_a(tag_a: Tag) -> bool: + """Returns True for appropriate link to audio.""" + tag_text = tag_a.get_text() + if "http" in tag_text: + return False + else: + is_appropriate = False + match = AUDIO_LINK_PATTERN.search(tag_text) + is_appropriate = True if match else False + return is_appropriate + + +def parse_post_audio(soup: BeautifulSoup) -> List[List[str]]: + """Returns list of lists with links to audio.""" + audios: List[List[str]] = [] + + soup_a_only = BeautifulSoup( + soup.encode(), + features="lxml", + parse_only=only_a_tags_with_mp3, + ) + + if len(soup_a_only) > 1: + tags_a_audio = soup_a_only.find_all(appropriate_tag_a, recursive=False) + if len(tags_a_audio) > 0: + for tag_a in tags_a_audio: + audio = [tag_a["href"]] + audios.append(audio) + return audios + else: + return audios + else: + return audios + + def parse_single_page( url: str, session: requests.Session, @@ -228,14 +270,21 @@ def parse_single_page( ) return bad_ep.__dict__ - soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_content_main) - post_date = parse_post_publish_datetime(soup_div) + soup_article = BeautifulSoup(html_page, "lxml", parse_only=only_article_content) + post_date = parse_post_publish_datetime(soup_article) + + post_type = "AUDIO" + post_audios = parse_post_audio(soup_article) + if not post_audios: + post_type = "TEXT" lep_ep = LepEpisode( episode=ep_number, date=post_date, url=final_location, post_title=url_title, + post_type=post_type, + audios=post_audios, parsing_utc=parsing_date, index=index, ) From f4877550550d12d47c207a53d4c8e9eb1590042c Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 29 Sep 2021 17:39:41 +0300 Subject: [PATCH 39/54] test(parser): :white_check_mark: Add minimum sufficient tests (to satisfy Coverage) --- tests/test_parser.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/tests/test_parser.py b/tests/test_parser.py index 0fd6d89..682d53b 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -401,3 +401,46 @@ def test_parsing_non_episode_link(requests_mock: rm_Mocker) -> None: link_title = "Some title" episode = parser.parse_single_page(non_episode_url, s, link_title) assert episode is None + + +def test_parsing_links_to_audio_for_mocked_episodes(requests_mock: rm_Mocker) -> None: + """It parses links to audio (if they exist).""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + parsing_result: t.Tuple[t.List[str], ...] = parser.get_archive_parsing_results( + conf.ARCHIVE_URL + ) + all_links: t.List[str] = parsing_result[0] + all_texts: t.List[str] = parsing_result[2] + session = requests.Session() + parsed_episodes = [] + + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + + parsed_episodes = parser.get_parsed_episodes(all_links, session, all_texts) + + assert len(parsed_episodes) > 781 + + min_date = datetime.strptime("2009-03-03T03:03:03+02:00", "%Y-%m-%dT%H:%M:%S%z") + mocked_episodes = [ + ep + for ep in parsed_episodes + if datetime.strptime(ep["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date + ] + assert len(mocked_episodes) > 15 + + +def test_no_appropriate_mp3_links() -> None: + """It returns empty list if there are no appropriate links.""" + markup = """\ + + + Get Episode + + """ + soup = BeautifulSoup(markup, "lxml") + list_of_audio = parser.parse_post_audio(soup) + assert len(list_of_audio) == 0 From 5ad3fe786dceb9c72efda77200be5d720cf66d6e Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 29 Sep 2021 18:00:50 +0300 Subject: [PATCH 40/54] refactor(parser): :recycle: Unify parsing part of archive page (tag
only) Rename soup objects --- src/lep_downloader/parser.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 3a4496f..98e8716 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -141,12 +141,11 @@ def substitute_short_links(unique_links: List[str]) -> List[str]: def get_archive_parsing_results(archive_url: str) -> Any: """Return Tuple with valid episode links and discarded links.""" html_page = get_web_page_html_text(archive_url, s)[0] - only_div_entry_content = SoupStrainer("div", class_="entry-content") - soup_div = BeautifulSoup(html_page, "lxml", parse_only=only_div_entry_content) + soup_article = BeautifulSoup(html_page, "lxml", parse_only=only_article_content) - if len(soup_div) > 0: - modified_soup_div = replace_misspelled_link(soup_div) - all_links = get_all_links_from_soup(modified_soup_div) + if len(soup_article) > 1: + modified_soup = replace_misspelled_link(soup_article) + all_links = get_all_links_from_soup(modified_soup) cleaned_links = remove_irrelevant_links(all_links) cleaned_links = remove_not_episode_links_by_regex_pattern(cleaned_links) @@ -154,7 +153,7 @@ def get_archive_parsing_results(archive_url: str) -> Any: unique_links = list(dict.fromkeys(cleaned_links)) # Get list of 'link labeles' - link_strings = get_links_text_by_href(modified_soup_div, unique_links) + link_strings = get_links_text_by_href(modified_soup, unique_links) final_list = substitute_short_links(unique_links) parsing_result = (final_list, deleted_links, link_strings) From 07e3202ddeac67919a3c32a6f44a4b9d68059994 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 29 Sep 2021 18:09:41 +0300 Subject: [PATCH 41/54] style: :art: Fix 'pre-commit' errors for imports order --- src/lep_downloader/lep.py | 1 + src/lep_downloader/parser.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 440e164..05084b3 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -1,6 +1,7 @@ """LEP module for general logic and classes.""" import typing as t + class LepEpisode: """LEP episode class.""" diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 98e8716..4d8565a 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -10,8 +10,8 @@ import requests from bs4 import BeautifulSoup -from bs4.element import Tag from bs4 import SoupStrainer +from bs4.element import Tag from lep_downloader import config as conf from lep_downloader.lep import LepEpisode From 0a5e435839651308490432fbbd6ed617413c74e6 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 29 Sep 2021 18:23:00 +0300 Subject: [PATCH 42/54] refactor: :recycle: Change default value for 'audios' attribute to None because 'flake8-bugbear' error B006 was raised --- src/lep_downloader/lep.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 05084b3..1e56ab2 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -14,7 +14,7 @@ def __init__( post_type: str = "", parsing_utc: str = "", index: int = 0, - audios: t.List[t.List[str]] = [], + audios: t.Optional[t.List[t.List[str]]] = None, admin_note: str = "", ) -> None: """Default instance of LepEpisode. From 64c8602109da01db809255521c6eb33301cc458b Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 1 Oct 2021 07:46:25 +0300 Subject: [PATCH 43/54] perf(parser): :zap: Change algorithm to extract episode links and their texts Remove mapping dict i.e. there are no duplicates now --- src/lep_downloader/config.py | 7 -- src/lep_downloader/parser.py | 123 +++++++++++++++++++---------------- 2 files changed, 68 insertions(+), 62 deletions(-) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index 7e91f37..87f8b94 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -24,10 +24,3 @@ EPISODE_LINK_RE = r"https?://((?Pwp\.me/p4IuUx-[\w-]+)|(teacherluke\.(co\.uk|wordpress\.com)/(?P\d{4}/\d{2}/\d{2})/))" INVALID_PATH_CHARS_RE = r"[<>:\"/\\\\|?*]" - -LINK_TEXTS_MAPPING = { - "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", - "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/": "[Website content] Luke’s Criminal Past (ZEP Episode 185)", - "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/": "[Website content] I was invited onto the “English Across The Pond” Podcast", - "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/": "[VIDEO] I was invited onto Craig Wealand’s weekly Blab, and we talked about comedy", -} diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 4d8565a..14b8083 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -7,6 +7,7 @@ from typing import Dict from typing import List from typing import Optional +from typing import Tuple import requests from bs4 import BeautifulSoup @@ -18,15 +19,28 @@ deleted_links = [] -regex = conf.EPISODE_LINK_RE -ep_pattern = re.compile(regex, re.IGNORECASE) + + +# COMPILED REGEX PATTERNS # + +EP_LINK_PATTERN = re.compile(conf.EPISODE_LINK_RE, re.IGNORECASE) + +duplicated_ep_links_re = r"^\[(website\scontent|video)\]$|episode\s522$" +DUPLICATED_EP_PATTERN = re.compile(duplicated_ep_links_re, re.IGNORECASE) + INVALID_PATH_CHARS_PATTERN = re.compile(conf.INVALID_PATH_CHARS_RE) + begining_digits_re = r"^\d{1,5}" BEGINING_DIGITS_PATTERN = re.compile(begining_digits_re) + audio_link_re = r"download\b|audio\s|click\s" AUDIO_LINK_PATTERN = re.compile(audio_link_re, re.IGNORECASE) + +# SoupStrainer's CALLBACKS # + only_article_content = SoupStrainer("article") +only_a_tags_with_ep_link = SoupStrainer("a", href=EP_LINK_PATTERN) only_a_tags_with_mp3 = SoupStrainer( "a", href=re.compile(r"^(?!.*boos/(2794795|3727124))(?!.*uploads).*\.mp3$", re.I), @@ -62,14 +76,39 @@ def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: return (resp.text, final_location, is_url_ok) -def get_all_links_from_soup(soup_obj: BeautifulSoup) -> List[str]: +def tag_a_with_episode(tag_a: Tag) -> bool: + """Returns True for appropriate link to episode.""" + tag_text = tag_a.get_text() + is_appropriate = False + match = DUPLICATED_EP_PATTERN.search(tag_text.strip()) + is_appropriate = False if match else True + return is_appropriate + + +def get_all_episode_links_from_soup( + soup_obj: BeautifulSoup, +) -> Tuple[List[str], List[str]]: """Return list of links from HTML block.""" all_links: List[str] = [] - all_tags_a = soup_obj("a") - for tag_a in all_tags_a: - all_links.append(tag_a["href"].strip()) - - return all_links + all_titles: List[str] = [] + soup_a_only = BeautifulSoup( + str(soup_obj), + features="lxml", + parse_only=only_a_tags_with_ep_link, + ) + if len(soup_a_only) > 1: + tags_a_episodes = soup_a_only.find_all(tag_a_with_episode, recursive=False) + if len(tags_a_episodes) > 0: + for tag_a in tags_a_episodes: + link = tag_a["href"].strip() + link_string = " ".join([text for text in tag_a.stripped_strings]) + all_links.append(link) + all_titles.append(link_string) + return (all_links, all_titles) + else: + return (all_links, all_titles) + else: + return (all_links, all_titles) def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: @@ -86,43 +125,17 @@ def replace_misspelled_link(soup_obj: BeautifulSoup) -> BeautifulSoup: return modified_soup -def remove_irrelevant_links(links: List[str]) -> List[str]: +def remove_irrelevant_links( + links: List[str], + texts: List[str], +) -> Tuple[List[str], List[str]]: """Return list of links without known irrelevant links.""" for i, link in enumerate(links[:]): if link in conf.IRRELEVANT_LINKS: deleted_links.append(link) del links[i] - return links - - -def remove_not_episode_links_by_regex_pattern(links: List[str]) -> List[str]: - """Return list of adopted episode (post) links.""" - result: List[str] = [] - for link in links: - match = ep_pattern.match(link) - if match: - result.append(link) - else: - deleted_links.append(link) - return result - - -def get_links_text_by_href( - soup_obj: BeautifulSoup, - links: List[str], -) -> List[str]: - """Return text of tag by its href attribute.""" - link_strings = [] - for url in links: - a_tag = soup_obj.find("a", href=url) - if url in [*conf.LINK_TEXTS_MAPPING]: - link_string = conf.LINK_TEXTS_MAPPING[url] - else: - link_string = " ".join([text for text in a_tag.stripped_strings]) - safe_name = INVALID_PATH_CHARS_PATTERN.sub("_", link_string) - link_strings.append(safe_name) - - return link_strings + del texts[i] + return (links, texts) def substitute_short_links(unique_links: List[str]) -> List[str]: @@ -145,21 +158,21 @@ def get_archive_parsing_results(archive_url: str) -> Any: if len(soup_article) > 1: modified_soup = replace_misspelled_link(soup_article) - all_links = get_all_links_from_soup(modified_soup) - cleaned_links = remove_irrelevant_links(all_links) - cleaned_links = remove_not_episode_links_by_regex_pattern(cleaned_links) - - # Get unique links with preserved order for Python 3.7+ - unique_links = list(dict.fromkeys(cleaned_links)) - - # Get list of 'link labeles' - link_strings = get_links_text_by_href(modified_soup, unique_links) - - final_list = substitute_short_links(unique_links) - parsing_result = (final_list, deleted_links, link_strings) + all_links: List[str] = [] + link_strings: List[str] = [] + all_links, link_strings = get_all_episode_links_from_soup(modified_soup) + + cleaned_links: List[str] = [] + cleaned_strings: List[str] = [] + cleaned_links, cleaned_strings = remove_irrelevant_links( + all_links, + link_strings, + ) + final_list = substitute_short_links(cleaned_links) + parsing_result = (final_list, deleted_links, cleaned_strings) return parsing_result else: - print("[ERROR] Can't parse this page: Main
is not found") + print("[ERROR] Can't parse this page:
tag was not found.") return None @@ -185,7 +198,7 @@ def parse_episode_number(post_title: str) -> int: def generate_post_index(post_url: str, indexes: List[int]) -> int: """Returns index number for post.""" - match = ep_pattern.match(post_url) + match = EP_LINK_PATTERN.match(post_url) if match: groups_dict = match.groupdict() date_from_url = groups_dict["date"] @@ -223,7 +236,7 @@ def parse_post_audio(soup: BeautifulSoup) -> List[List[str]]: audios: List[List[str]] = [] soup_a_only = BeautifulSoup( - soup.encode(), + str(soup), features="lxml", parse_only=only_a_tags_with_mp3, ) From 80e4ea93c2e57c262f25a260757ad2dd7f63b5b8 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Fri, 1 Oct 2021 07:49:38 +0300 Subject: [PATCH 44/54] test(parser): :white_check_mark: Update tests according to new archive parsing algorythm Remove tests for two deleted functions --- tests/test_parser.py | 103 +++++++++++++++++++++---------------------- 1 file changed, 50 insertions(+), 53 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 682d53b..1d64791 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -131,22 +131,27 @@ def test_final_location_for_bad_redirect(requests_mock: rm_Mocker) -> None: assert final_location == "https://bad.final.location/" -def test_retrieve_all_links_from_soup() -> None: +def test_retrieve_all_episode_links_from_soup() -> None: """It returns only tags from soup object.""" html_doc = """The Dormouse's story - +

The Dormouse's story

Once upon a time there were three little sisters; and their names were - Elsie, - Sara and + Elsie, Tillie; + + 723. Bahar from Iran  + 🇮🇷 +  (WISBOLEP Runner-Up) + and they lived at the bottom of a well.

...

""" soup = BeautifulSoup(html_doc, "lxml") - only_links = parser.get_all_links_from_soup(soup) - assert len(only_links) == 3 + only_links, only_strings = parser.get_all_episode_links_from_soup(soup) + assert len(only_links) == 2 + assert len(only_strings) == 2 def test_replacing_misspelled_link() -> None: @@ -190,53 +195,15 @@ def test_removing_irrelevant_links() -> None: "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/", ] - new_list: t.List[str] = parser.remove_irrelevant_links(test_list) - assert len(new_list) == 3 - - -def test_removing_not_episode_links() -> None: - """It removes links from list which are not match by regex pattern.""" - test_list: t.List[str] = [ - "https://teacherluke.co.uk/2020/11/23/wisbolep/", - "https://teacherluke.co.uk/premium/archive-comment-section/", # <- bad - "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", - "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%f0%9f%87%ab%f0%9f%87%b7-wisbolep-runner-up/", - "http://wp.me/p4IuUx-7sg", - "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/", - "https://example.com/", # <- bad - ] - new_list: t.List[str] = parser.remove_not_episode_links_by_regex_pattern(test_list) - assert len(new_list) == 5 - - -def test_getting_links_text_by_href() -> None: - """It gets list of link texts, searching by their 'href' attribute.""" - html_doc: str = """The Dormouse's story - -

Once upon a time there were three little sisters; and their names were - Elsie, - - Link from dict and - Tillie; - Text with spaces - ; - and they lived at the bottom of a well. -

- 4th sister: is John?!; - """ - search_links: t.List[str] = [ - "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", - "http://example.com/spaces", - "http://example.com/john", - ] - soup = BeautifulSoup(html_doc, "lxml") - texts = parser.get_links_text_by_href(soup, search_links) - expected_texts: t.List[str] = [ - "[Website content] I was invited onto the “English Across The Pond” Podcast", # Replace from config dict - "Text with spaces", - "4th sister_ is John_!", # Replace invalid characters + test_texts: t.List[str] = [ + "1. Link", + "Link to App (irrelevant)", + "2. Link", + "3. Link", ] - assert texts == expected_texts + new_list, new_texts = parser.remove_irrelevant_links(test_list, test_texts) + assert len(new_list) == len(new_texts) + assert "Link to App (irrelevant)" not in new_texts def test_short_links_substitution() -> None: @@ -270,7 +237,8 @@ def test_parsing_result(requests_mock: rm_Mocker) -> None: requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) all_links = parsing_result[0] - assert all_links is not None + all_texts = parsing_result[2] + assert len(all_links) == len(all_texts) assert len(all_links) > 781 assert "/2009/04/12/episode-1-introduction" in all_links[-1] # Intersection of mocked pages and all links @@ -289,6 +257,35 @@ def test_parsing_invalid_html(requests_mock: rm_Mocker) -> None: assert parsing_result is None +def test_parsing_archive_without_episodes() -> None: + """It collects links only matched by episode link pattern.""" + markup = """The Dormouse's story +
+

Once upon a time there were three little sisters; and their names were + Tillie; + and they lived at the bottom of a well. +

+

...

+ """ + soup = BeautifulSoup(markup, "lxml") + links, texts = parser.get_all_episode_links_from_soup(soup) + assert len(links) == 0 + assert len(texts) == 0 + + +def test_parsing_archive_with_known_duplicates() -> None: + """It ignores several links by their texts.""" + markup = """Known Duplicates + [VIDEO]; + episode 522; + [Website content]; + """ + soup = BeautifulSoup(markup, "lxml") + links, texts = parser.get_all_episode_links_from_soup(soup) + assert len(links) == 0 + assert len(texts) == 0 + + def mocked_single_page_matcher( request: requests.Request, ) -> t.Optional[requests.Response]: From 2769f428b79c713d112d6ff34d4b3e7134ea920e Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 6 Oct 2021 10:54:29 +0300 Subject: [PATCH 45/54] test(parser): :white_check_mark: Add two tests to check parsing mp3 links for certain cases Exclude links to separate short audio No dupplicates for 'audio' word in the URL --- tests/test_parser.py | 47 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 1d64791..522439e 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -430,7 +430,7 @@ def test_parsing_links_to_audio_for_mocked_episodes(requests_mock: rm_Mocker) -> assert len(mocked_episodes) > 15 -def test_no_appropriate_mp3_links() -> None: +def test_no_appropriate_mp3_links_by_title() -> None: """It returns empty list if there are no appropriate links.""" markup = """\ @@ -441,3 +441,48 @@ def test_no_appropriate_mp3_links() -> None: soup = BeautifulSoup(markup, "lxml") list_of_audio = parser.parse_post_audio(soup) assert len(list_of_audio) == 0 + + +def test_selecting_appropriate_mp3_links_by_href() -> None: + """It returns list with only appropriate mp3 links.""" + markup = """\ + + + Download episode + + + + Download episode + + + Download episode + + + Download episode + + + Download episode + + """ + soup = BeautifulSoup(markup, "lxml") + list_of_audio = parser.parse_post_audio(soup) + assert len(list_of_audio) == 2 + assert list_of_audio[0] == [ + "http://traffic.libsyn.com/teacherluke/600._Episode_600_Livestream_Ask_Me_Anything_Audio.mp3", + ] + assert list_of_audio[1] == [ + "https://audioboom.com/boos/2550583-101-a-note-from-luke.mp3", + ] + + +def test_appropriate_mp3_link_with_word_audio() -> None: + """It returns list of one appropriate mp3 link (without duplicate).""" + markup = """\ + + + DOWNLOAD AUDIO + + """ + soup = BeautifulSoup(markup, "lxml") + list_of_audio = parser.parse_post_audio(soup) + assert len(list_of_audio) == 1 From 48e36741345cda55419096ea92bf6f748707cd29 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Wed, 6 Oct 2021 11:05:04 +0300 Subject: [PATCH 46/54] style: :pencil2: Fix wrong writing of 'non-episode' word --- tests/test_parser.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index 522439e..ce7ab7f 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -388,7 +388,7 @@ def test_generating_new_post_index_on_same_day() -> None: def test_parsing_non_episode_link(requests_mock: rm_Mocker) -> None: - """It returns None (empty episode) for none episode link.""" + """It returns None (empty episode) for non-episode link.""" non_episode_url = "https://teacherluke.co.uk/premium/archive-comment-section/" requests_mock.get( non_episode_url, From 9b32d971583aaa0dc4d3c354bc807d373c7bffda Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Thu, 7 Oct 2021 11:15:48 +0300 Subject: [PATCH 47/54] feat(parser): :sparkles: Add function for descending sorting of parsed episodes Change returned type of episodes list to List[LepEpisode] --- src/lep_downloader/parser.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 14b8083..07905b7 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -3,8 +3,8 @@ import re from datetime import datetime from datetime import timezone +from operator import attrgetter from typing import Any -from typing import Dict from typing import List from typing import Optional from typing import Tuple @@ -258,7 +258,7 @@ def parse_single_page( url: str, session: requests.Session, url_title: str, -) -> Optional[Dict[str, Any]]: +) -> Optional[LepEpisode]: """Returns a dict of parsed episode.""" current_date_utc = datetime.now(timezone.utc) parsing_date = current_date_utc.strftime(r"%Y-%m-%dT%H:%M:%S.%fZ") @@ -280,7 +280,7 @@ def parse_single_page( index=index, admin_note=html_page[:50], ) - return bad_ep.__dict__ + return bad_ep soup_article = BeautifulSoup(html_page, "lxml", parse_only=only_article_content) post_date = parse_post_publish_datetime(soup_article) @@ -300,16 +300,16 @@ def parse_single_page( parsing_utc=parsing_date, index=index, ) - return lep_ep.__dict__ + return lep_ep def get_parsed_episodes( urls: List[str], session: requests.Session, texts: List[str], -) -> List[Dict[str, Any]]: +) -> List[LepEpisode]: """Returns list of parsed episodes.""" - parsed_episodes: List[Dict[str, Any]] = [] + parsed_episodes: List[LepEpisode] = [] texts_from_first_to_last = list(reversed(texts)) for i, url in enumerate(list(reversed(urls))): url_title = texts_from_first_to_last[i] @@ -317,3 +317,11 @@ def get_parsed_episodes( if ep is not None: parsed_episodes.append(ep) return parsed_episodes + + +def sort_episodes_by_post_date( + episodes: List[LepEpisode], +) -> List[LepEpisode]: + """Returns list of LepEpisodes sorted by post datetime.""" + sorted_episodes = sorted(episodes, key=attrgetter("date", "episode"), reverse=True) + return sorted_episodes From bb27150ae0930693c1f9f691fda5902114ef1236 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Thu, 7 Oct 2021 11:18:53 +0300 Subject: [PATCH 48/54] test(parser): :white_check_mark: Add test to check episodes sorting Modify existing tests to follow changes for returned type of parsing function --- tests/test_parser.py | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/tests/test_parser.py b/tests/test_parser.py index ce7ab7f..6c57999 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -11,6 +11,7 @@ from lep_downloader import config as conf from lep_downloader import parser +from lep_downloader.lep import LepEpisode OFFLINE_HTML_DIR = Path( @@ -338,10 +339,16 @@ def test_mocking_single_page(requests_mock: rm_Mocker) -> None: mocked_episodes = [ ep for ep in parsed_episodes - if datetime.strptime(ep["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date + if datetime.strptime(ep.__dict__["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date ] assert len(mocked_episodes) > 15 + sorted_episodes = parser.sort_episodes_by_post_date(parsed_episodes) + assert ( + sorted_episodes[0].__dict__["url"] + == "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/" + ) + def test_parsing_post_datetime() -> None: """It gets post datetime.""" @@ -402,6 +409,7 @@ def test_parsing_non_episode_link(requests_mock: rm_Mocker) -> None: def test_parsing_links_to_audio_for_mocked_episodes(requests_mock: rm_Mocker) -> None: """It parses links to audio (if they exist).""" + # TODO: Complete test (now it's simple copy-paste) requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) parsing_result: t.Tuple[t.List[str], ...] = parser.get_archive_parsing_results( conf.ARCHIVE_URL @@ -425,7 +433,7 @@ def test_parsing_links_to_audio_for_mocked_episodes(requests_mock: rm_Mocker) -> mocked_episodes = [ ep for ep in parsed_episodes - if datetime.strptime(ep["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date + if datetime.strptime(ep.__dict__["date"], "%Y-%m-%dT%H:%M:%S%z") > min_date ] assert len(mocked_episodes) > 15 @@ -486,3 +494,22 @@ def test_appropriate_mp3_link_with_word_audio() -> None: soup = BeautifulSoup(markup, "lxml") list_of_audio = parser.parse_post_audio(soup) assert len(list_of_audio) == 1 + + +def test_episodes_sorting_by_date() -> None: + """It sorts LepEpisodes by datetime then by episode number.""" + test_lep_ep_1 = LepEpisode(episode=35, date="2010-03-25T22:59:36+01:00") + test_lep_ep_2 = LepEpisode(episode=36, date="2010-03-25T22:59:36+01:00") + test_lep_ep_3 = LepEpisode(episode=100) + episodes = [ + test_lep_ep_1, + test_lep_ep_2, + test_lep_ep_3, + ] + expected_sorted = [ + test_lep_ep_2, + test_lep_ep_1, + test_lep_ep_3, + ] + sorted_episodes = parser.sort_episodes_by_post_date(episodes) + assert sorted_episodes == expected_sorted From aea5b006cfdc88a5c020fc15cf1fb8abe74e2a6e Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Thu, 7 Oct 2021 11:55:24 +0300 Subject: [PATCH 49/54] fix(parser): :bug: Change secondary key sorting to 'index' becuase could be episodes with the same date but without episode number Update unit-test --- src/lep_downloader/parser.py | 2 +- tests/test_parser.py | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 07905b7..9c75842 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -323,5 +323,5 @@ def sort_episodes_by_post_date( episodes: List[LepEpisode], ) -> List[LepEpisode]: """Returns list of LepEpisodes sorted by post datetime.""" - sorted_episodes = sorted(episodes, key=attrgetter("date", "episode"), reverse=True) + sorted_episodes = sorted(episodes, key=attrgetter("date", "index"), reverse=True) return sorted_episodes diff --git a/tests/test_parser.py b/tests/test_parser.py index 6c57999..f2d07d7 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -498,8 +498,16 @@ def test_appropriate_mp3_link_with_word_audio() -> None: def test_episodes_sorting_by_date() -> None: """It sorts LepEpisodes by datetime then by episode number.""" - test_lep_ep_1 = LepEpisode(episode=35, date="2010-03-25T22:59:36+01:00") - test_lep_ep_2 = LepEpisode(episode=36, date="2010-03-25T22:59:36+01:00") + test_lep_ep_1 = LepEpisode( + episode=35, + date="2010-03-25T22:59:36+01:00", + index=2010032501, + ) + test_lep_ep_2 = LepEpisode( + episode=0, + date="2010-03-25T22:59:36+01:00", + index=2010032502, + ) test_lep_ep_3 = LepEpisode(episode=100) episodes = [ test_lep_ep_1, From 3d65b69e7909842612b915f24564817360624904 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 19 Oct 2021 08:33:51 +0300 Subject: [PATCH 50/54] chore: :wrench: Add JSON_DB_URL configuration parameter --- src/lep_downloader/config.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lep_downloader/config.py b/src/lep_downloader/config.py index 87f8b94..5e270c4 100644 --- a/src/lep_downloader/config.py +++ b/src/lep_downloader/config.py @@ -3,6 +3,8 @@ ARCHIVE_URL = "https://hotenov.com" +JSON_DB_URL = "https://hotenov.com/some_json.json" + LOCAL_ARCHIVE_HTML = "2021-08-10_lep-archive-page-content-pretty.html" SHORT_LINKS_MAPPING_DICT = { From 1f45c2b3cae718953aef330508ebf6b9949adbc3 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 19 Oct 2021 08:37:14 +0300 Subject: [PATCH 51/54] feat: :label: Add 'LepJsonEncoder' class for json dump operations --- src/lep_downloader/lep.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/lep_downloader/lep.py b/src/lep_downloader/lep.py index 1e56ab2..db701c1 100644 --- a/src/lep_downloader/lep.py +++ b/src/lep_downloader/lep.py @@ -1,8 +1,9 @@ """LEP module for general logic and classes.""" +import json import typing as t -class LepEpisode: +class LepEpisode(object): """LEP episode class.""" def __init__( @@ -39,3 +40,14 @@ def __init__( self.parsing_utc = parsing_utc self.index = index self.admin_note = admin_note + + +class LepJsonEncoder(json.JSONEncoder): + """Custom JSONEncoder for LepEpisode objects.""" + + def default(self, obj: t.Any) -> t.Any: + """Override 'default' method for encoding JSON objects.""" + if isinstance(obj, LepEpisode): + return obj.__dict__ + # Let the base class default method raise the TypeError + return json.JSONEncoder.default(self, obj) From 6863731fdf6d15de2507ef00131b0ca8e23ebfbd Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 19 Oct 2021 08:40:18 +0300 Subject: [PATCH 52/54] feat(parser): :sparkles: Add rough implementation of 'main' method with parsing actions (including writing JSON file) --- src/lep_downloader/parser.py | 103 ++++++++++++++++++++++++++++++++++- 1 file changed, 101 insertions(+), 2 deletions(-) diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 9c75842..5749a4b 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -1,10 +1,13 @@ """LEP module for parsing logic.""" import copy +import json import re +from collections import Counter from datetime import datetime from datetime import timezone from operator import attrgetter -from typing import Any +from pathlib import Path +from typing import Any, Dict from typing import List from typing import Optional from typing import Tuple @@ -16,6 +19,7 @@ from lep_downloader import config as conf from lep_downloader.lep import LepEpisode +from lep_downloader.lep import LepJsonEncoder deleted_links = [] @@ -51,6 +55,9 @@ s = requests.Session() +DEFAULT_JSON_PATH = Path("lep-db.min.json") + + def get_web_page_html_text(page_url: str, session: requests.Session) -> Any: """Return HTML text of LEP archive page.""" final_location = page_url @@ -173,7 +180,7 @@ def get_archive_parsing_results(archive_url: str) -> Any: return parsing_result else: print("[ERROR] Can't parse this page:
tag was not found.") - return None + return (None, None, None) def parse_post_publish_datetime(soup: BeautifulSoup) -> str: @@ -325,3 +332,95 @@ def sort_episodes_by_post_date( """Returns list of LepEpisodes sorted by post datetime.""" sorted_episodes = sorted(episodes, key=attrgetter("date", "index"), reverse=True) return sorted_episodes + + +def get_only_new_post_urls( + # json_string: str, + db_episodes: List[LepEpisode], + links: List[str], + texts: List[str], +) -> Any: + """Returns difference in URLs between database and archive page.""" + db_links_and_texts: List[Tuple[str, str]] + db_links_and_texts = [(item.url.lower(), item.post_title) for item in db_episodes] + archive_links_and_texts = list(zip(links, texts)) + ep_diff = list((Counter(archive_links_and_texts) - Counter(db_links_and_texts))) + if len(db_links_and_texts) > len(archive_links_and_texts): + return None + else: + return ep_diff + + +def write_parsed_episodes_to_json( + lep_objects: List[LepEpisode], + path: Path = DEFAULT_JSON_PATH, +) -> None: + """Write list of LepEpisode objects to file.""" + with open(path, "w") as outfile: + json.dump(lep_objects, outfile, indent=4, cls=LepJsonEncoder) + + +def as_lep_episode_obj(dct: Dict[str, Any]) -> Optional[LepEpisode]: + """Specialize JSON object decoding.""" + try: + lep_ep = LepEpisode(**dct) + except TypeError: + print(f"[WARNING]: Invalid object in JSON!\n\t{dct}") + return None + else: + return lep_ep + + +def do_parsing_actions( + json_url: str, + archive_url: str, + path_to_json: Path = DEFAULT_JSON_PATH, +) -> None: + """Main methdod to do parsing.""" + db_episodes: List[LepEpisode] = [] + new_episodes: List[LepEpisode] = [] + # Get links and their texts for current archive state. + links, _, texts = get_archive_parsing_results(archive_url) + if links: + # Get database JSON content + json_body, _, status_db_ok = get_web_page_html_text(json_url, s) + if status_db_ok: + try: + db_episodes = json.loads(json_body, object_hook=as_lep_episode_obj) + except json.JSONDecodeError: + print(f"[ERROR]: Data is not a valid JSON document.\n\tURL: {json_url}") + return None + is_db_str: bool = type(db_episodes) == str # type: ignore + db_episodes = [obj for obj in db_episodes if obj] + if not db_episodes or is_db_str: + print( + f"[WARNING]: JSON file ({json_url}) has no valid episode objects." + ) + return None + # Get differences between database and current posts archive URLs + zipped_diff = get_only_new_post_urls(db_episodes, links, texts) + if zipped_diff is None: + print( + "[WARNING]: Database contains more episodes than current archive!" + ) + return None + if len(zipped_diff) > 0: + # Unzip differences + new_links, new_texts = zip(*zipped_diff) + # Parse new episodes + new_episodes = get_parsed_episodes(list(new_links), s, list(new_texts)) + + all_episodes = new_episodes + db_episodes + all_episodes = sort_episodes_by_post_date(all_episodes) + + write_parsed_episodes_to_json(all_episodes, path_to_json) + else: + print("There are no new episodes. Exit.") + return None + else: + print("JSON database is not available. Exit.") + return None + + else: + print("[ERROR]: Can't parse any episodes from archive page.") + return From 580fe6b3bcff01c3dca814c0e8d18d5aeb74ffc2 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 19 Oct 2021 08:44:03 +0300 Subject: [PATCH 53/54] test(parser): :white_check_mark: Add tests for writing and updating JSON database Add JSON (pretty) fixture with test database --- .../mocked-db-json-equal-786-objects.json | 8720 +++++++++++++++++ tests/test_parser.py | 272 +- 2 files changed, 8991 insertions(+), 1 deletion(-) create mode 100644 tests/fixtures/mocked-db-json-equal-786-objects.json diff --git a/tests/fixtures/mocked-db-json-equal-786-objects.json b/tests/fixtures/mocked-db-json-equal-786-objects.json new file mode 100644 index 0000000..731ae81 --- /dev/null +++ b/tests/fixtures/mocked-db-json-equal-786-objects.json @@ -0,0 +1,8720 @@ +[ + { + "episode": 733, + "date": "2021-08-03T18:12:02+02:00", + "url": "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/", + "post_title": "733. A Summer Ramble", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/733._A_Summer_Ramble.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.597990Z", + "index": 2021080301, + "admin_note": "" + }, + { + "episode": 714, + "date": "2021-04-11T23:32:42+02:00", + "url": "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%F0%9F%87%A9%F0%9F%87%AA-wisbolep-runner-up/", + "post_title": "714. Robin from Hamburg (WISBOLEP Runner-Up)", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/714._Robin_from_Hamburg__WISBOLEP_Runner-Up.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.361072Z", + "index": 2021041101, + "admin_note": "" + }, + { + "episode": 711, + "date": "2021-03-26T15:06:43+01:00", + "url": "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%F0%9F%87%AB%F0%9F%87%B7-wisbolep-runner-up/", + "post_title": "711. William from France (WISBOLEP Runner-UP)", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/711._William_from_France__WISBOLEP_Runner-UP.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.264099Z", + "index": 2021032601, + "admin_note": "" + }, + { + "episode": 703, + "date": "2021-02-03T18:33:04+01:00", + "url": "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%F0%9F%8F%86/", + "post_title": "703. Walaa from Syria \u2013 WISBOLEP Competition Winner", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/703._Walaa_from_Syria_-_WISBOLEP_Competition_Winner_.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.140983Z", + "index": 2021020301, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-08-26T07:30:24+02:00", + "url": "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/", + "post_title": "[Website only] A History of British Pop \u2013 A Musical Tour through James\u2019 Vinyl Collection", + "post_type": "TEXT", + "audios": [], + "parsing_utc": "2021-10-14T07:35:29.221311Z", + "index": 2017082601, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-05-26T12:46:40+02:00", + "url": "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", + "post_title": "I was invited onto the \u201cEnglish Across The Pond\u201d Podcast", + "post_type": "TEXT", + "audios": [], + "parsing_utc": "2021-10-14T07:35:28.963595Z", + "index": 2017052601, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-03-11T18:45:49+01:00", + "url": "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/", + "post_title": "LEP on ZEP \u2013 My recent interview on Zdenek\u2019s English Podcast", + "post_type": "AUDIO", + "audios": [ + [ + "https://audioboom.com/posts/5602875-episode-166-luke-back-on-zep-part-1.mp3" + ], + [ + "https://audioboom.com/posts/5621870-episode-167-luke-back-on-zep-part-2.mp3" + ], + [ + "https://audioboom.com/posts/5627735-episode-168-luke-back-on-zep-part-3.mp3" + ], + [ + "https://audioboom.com/posts/5678762-episode-169-luke-back-on-zep-part-4.mp3" + ], + [ + "https://audioboom.com/posts/5695159-episode-170-luke-back-on-zep-part-5-analysis.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:28.727674Z", + "index": 2017031101, + "admin_note": "" + }, + { + "episode": 370, + "date": "2016-08-07T15:30:38+02:00", + "url": "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/", + "post_title": "370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:28.165853Z", + "index": 2016080701, + "admin_note": "" + }, + { + "episode": 305, + "date": "2015-10-07T09:25:39+02:00", + "url": "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/", + "post_title": "305. Back To The Future (Part 2)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/300-2-episode-300-part-2.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:27.557253Z", + "index": 2015102201, + "admin_note": "" + }, + { + "episode": 304, + "date": "2015-10-07T09:21:24+02:00", + "url": "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/", + "post_title": "304. Back To The Future (Part 1)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/300-1-episode-300-part-1.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:27.477279Z", + "index": 2015102101, + "admin_note": "" + }, + { + "episode": 193, + "date": "2014-06-30T15:37:44+02:00", + "url": "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/", + "post_title": "193. Culture Shock: Life in London (Pt.2)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/193-culture-shock-life-in-london-part-2.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:26.476157Z", + "index": 2014063002, + "admin_note": "" + }, + { + "episode": 113, + "date": "2012-09-27T11:49:36+02:00", + "url": "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/", + "post_title": "113. Setting The World To Rights", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/113-setting-the-world-to-rights.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:25.753394Z", + "index": 2012092701, + "admin_note": "" + }, + { + "episode": 36, + "date": "2010-03-25T22:59:36+01:00", + "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", + "post_title": "36. London Video Interviews \u2013 Part 1 (Audio)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:25.059621Z", + "index": 2010032502, + "admin_note": "" + }, + { + "episode": 35, + "date": "2010-03-25T22:59:36+01:00", + "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", + "post_title": "35. London Video Interviews \u2013 Part 1 (Video)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.951658Z", + "index": 2010032501, + "admin_note": "" + }, + { + "episode": 16, + "date": "2009-10-19T21:21:43+02:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/", + "post_title": "16. Michael Jackson", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/16-michael-jackson.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.719523Z", + "index": 2009101909, + "admin_note": "" + }, + { + "episode": 15, + "date": "2009-10-19T21:14:49+02:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/", + "post_title": "15. Extra Podcast \u2013 12 Phrasal Verbs", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/15-extra-podcast-12-phrasal-verbs.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.665541Z", + "index": 2009101908, + "admin_note": "" + }, + { + "episode": 1, + "date": "2009-04-12T15:23:33+02:00", + "url": "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/", + "post_title": "1. Introduction", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/1-introduction.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.499596Z", + "index": 2009041201, + "admin_note": "" + }, + { + "episode": 732, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/29/732-christian-from-canguro-english-returns/", + "post_title": "732. Christian from Canguro English returns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.589992Z", + "index": 2021072901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 731, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/25/731-beatles-song-lyrics-idioms-expressions-with-antony-rotunno/", + "post_title": "731. Beatles Song Lyrics / Idioms & Expressions (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.582996Z", + "index": 2021072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 730, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/19/730-marie-connolly-returns-2-songs/", + "post_title": "730. Marie Connolly Returns (+ 2 songs)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.574997Z", + "index": 2021071901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 729, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/13/729-toefl-and-the-duolingo-english-test-with-josh-macpherson-from-tstprep-com/", + "post_title": "729. TOEFL and the Duolingo English Test (with Josh MacPherson from TSTPrep.com)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.567001Z", + "index": 2021071301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 728, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/05/728-english-with-rob-games-music-jingles/", + "post_title": "728. English with Rob / Games, Music & Jingles", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.559003Z", + "index": 2021070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 727, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/30/727-describing-john-lennon-adjectives-of-personality-j-z-with-antony-rotunno/", + "post_title": "727. Describing John Lennon / Adjectives of Personality J-Z (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.551006Z", + "index": 2021063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 726, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/26/726-describing-john-lennon-adjectives-of-personality-a-i-with-antony-rotunno/", + "post_title": "726. Describing John Lennon / Adjectives of Personality A-I (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.541009Z", + "index": 2021062601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/22/bonus-euro2020-swapcast-with-martin-johnston-rnr-zdenek-lukas-zep/", + "post_title": "BONUS: EURO2020 Swapcast with Martin Johnston (RnR) & Zdenek Lukas (ZEP) Parts 1 & 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.530012Z", + "index": 2021062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 725, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/17/725-fun-games-for-learning-english-with-vickie-kelty/", + "post_title": "725. Fun & Games for Learning English with Vickie Kelty", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.523015Z", + "index": 2021061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/16/unboxing-my-shiny-youtube-award-for-100000-subscribers-audio-and-video-versions/", + "post_title": "Unboxing my Shiny YouTube Award for 100,000 Subscribers (Audio and Video Versions)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.508024Z", + "index": 2021061601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 724, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/11/724-the-mountain-short-story-video/", + "post_title": "724. The Mountain (Short Story) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.515022Z", + "index": 2021061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 723, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/04/723-bahar-from-iran-wisbolep-runner-up/", + "post_title": "723. Bahar from Iran (WISBOLEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.500023Z", + "index": 2021060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 722, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/29/722-discussing-john-lennon-with-antony-rotunno/", + "post_title": "722. Discussing John Lennon with Antony Rotunno", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.492024Z", + "index": 2021052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 721, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/24/721-collins-dictionary-word-quizzes-with-fred-eyangoh/", + "post_title": "721. Collins Dictionary Word Quizzes / Confusing Words with Fred Eyangoh", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.485028Z", + "index": 2021052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 720, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/18/720-how-fred-learns-vocabulary-with-the-new-york-times-spelling-bee-with-fred-eyangoh/", + "post_title": "720. How Fred Learns Vocabulary with the New York Times Spelling Bee (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.477031Z", + "index": 2021051801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 719, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/10/719-amber-paul-are-on-the-podcast/", + "post_title": "719. Amber & Paul are on the Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.469033Z", + "index": 2021051001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 718, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/03/718-michael-the-shaman-wisbloep-runner-up/", + "post_title": "718. Michael the Shaman (WISBLOEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.461035Z", + "index": 2021050301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 717, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/27/717-gills-book-club-one-two-three-four-the-beatles-in-time-by-craig-brown/", + "post_title": "717. Gill\u2019s Book Club: \u201cOne Two Three Four \u2013 The Beatles In Time\u201d by Craig Brown", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.454042Z", + "index": 2021042701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 716, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/22/716-interview-with-a-pop-star-from-the-1960s-megan-brady-from-the-applejacks/", + "post_title": "716. Interview with a Pop Star from the 1960s \u2013 Megan Brady from The Applejacks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.446040Z", + "index": 2021042201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 715, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/16/715-catching-up-with-craig-wealand-lep-airc-swapcast/", + "post_title": "715. Catching up with Craig Wealand [LEP/AIRC Swapcast]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.439042Z", + "index": 2021041601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 713, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/07/713-lucky-dip-with-paul-taylor/", + "post_title": "713. Lucky Dip with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.354075Z", + "index": 2021040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 712, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/03/712-a-chat-with-charlie-baxter/", + "post_title": "712. A Chat with Charlie Baxter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.345073Z", + "index": 2021040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 710, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/17/710-the-umbrella-man-by-roald-dahl-short-story/", + "post_title": "710. The Umbrella Man by Roald Dahl (Short Story)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.257102Z", + "index": 2021031701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 709, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/11/709-the-stoicism-of-groundhog-day-with-mum/", + "post_title": "709. The Stoicism of Groundhog Day (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.249105Z", + "index": 2021031101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 708, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/05/708-tasha-liu-from-china-wisbolep-runner-up/", + "post_title": "708. Tasha Liu from China (WISBOLEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.242107Z", + "index": 2021030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 707, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/01/707-2-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", + "post_title": "707. [2/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.234114Z", + "index": 2021030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 706, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/27/706-1-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", + "post_title": "706. [1/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.226119Z", + "index": 2021022701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 705, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/24/705-kate-billington-returns-and-she-brought-cake/", + "post_title": "705. Kate Billington Returns (and she brought cake)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.218117Z", + "index": 2021022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 704, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/11/704-the-rick-thompson-report-brexit-update-february-2021/", + "post_title": "704. The Rick Thompson Report: Brexit Update (February 2021)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.210124Z", + "index": 2021021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 702, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/25/702-emergency-questions-with-james/", + "post_title": "702. Emergency Questions (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.132981Z", + "index": 2021012501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 701, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/19/701-legal-english-with-louise-kulbicki/", + "post_title": "701. Legal English with Louise Kulbicki", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.124988Z", + "index": 2021011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 700, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/13/700-marooned-with-my-music-luke-thompson/", + "post_title": "700. Marooned With My Music: Luke Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.117986Z", + "index": 2021011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 699, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/07/699-welcome-back-to-lukes-english-podcast-faq-january-2021/", + "post_title": "699. Welcome (back) to Luke\u2019s English Podcast / FAQ (January 2021)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.109993Z", + "index": 2021010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 698, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/23/698-paul-is-on-the-podcast-random-questions-with-paul-taylor/", + "post_title": "698. Paul is on the Podcast / Random Questions with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.102995Z", + "index": 2020122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 697, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/18/697-11-christmas-cracker-jokes-for-2020-explained/", + "post_title": "697. 11 Christmas Cracker Jokes for 2020, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.094998Z", + "index": 2020121801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 696, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/16/696-wisbolep-competition-results-ramble/", + "post_title": "696. WISBOLEP Competition Results + RAMBLE", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.088000Z", + "index": 2020121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 695, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/11/695-pronunciation-pragmatics-procrastination-with-emma/", + "post_title": "695. Pronunciation, Pragmatics & Procrastination with Emma", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.080003Z", + "index": 2020121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 694, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/07/694-the-crown-the-royal-family-a-royal-ramble-with-my-wife/", + "post_title": "694. The Crown / The Royal Family (A Royal Ramble with My Wife)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.073005Z", + "index": 2020120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 693, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/30/693-english-with-lucy-a-conversation-with-lucy-earl/", + "post_title": "693. English With Lucy / A Conversation with Lucy Earl", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.066004Z", + "index": 2020113001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 692, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/23/wisbolep/", + "post_title": "692. WISBOLEP Competition Entries \u2013 Listen & Vote!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.058011Z", + "index": 2020112301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 691, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/18/691-jerome-butler-dialect-coach/", + "post_title": "691. Jerome Butler \u2013 Dialect Coach", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.051008Z", + "index": 2020111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 690, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/12/690-urban-vs-rural-living-abroad-cultural-differences-with-cara-leopold/", + "post_title": "690. Urban vs Rural / Living Abroad / Cultural Differences (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.043015Z", + "index": 2020111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 689, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/06/689-baking-cakes-telling-jokes-speaking-chinese-with-kate-billington/", + "post_title": "689. Baking Cakes, Telling Jokes & Speaking Chinese with Kate Billington", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.036017Z", + "index": 2020110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 688, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/02/689-sean-connery/", + "post_title": "688. Sean Connery", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.028015Z", + "index": 2020110201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 687, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/29/687-wisbolep-problem-polite-requests-an-inspiring-email-fly-me-to-the-moon/", + "post_title": "687. WISBOLEP Problem / Polite Requests / An Inspiring Email / Fly Me To the Moon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.020023Z", + "index": 2020102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 686, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/27/686-christian-from-canguro-english/", + "post_title": "686. Christian from Canguro English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.012025Z", + "index": 2020102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 685, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/21/685-raising-bilingual-children-1-alex-and-his-daughter-alice-in-moscow/", + "post_title": "685. Raising Bilingual Children [1] Alex and his daughter Alice, in Moscow", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.004028Z", + "index": 2020102101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 684, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/15/684-chasing-the-tangent-train-with-elspeth-graty/", + "post_title": "684. Chasing the Tangent Train with Elspeth Graty", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.997030Z", + "index": 2020101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 683, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/09/683-feelgood-stories-of-flirting-with-marie-connolly/", + "post_title": "683. Feelgood Stories of Flirting with Marie Connolly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.989032Z", + "index": 2020100901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 682, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/25/682-key-features-of-english-accents-explained/", + "post_title": "682. Key Features of English Accents, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.982031Z", + "index": 2020092501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 681, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/16/681-new-competition-why-i-should-be-on-lep-wisbolep-story-the-first-time-i-said-fck/", + "post_title": "681. New Competition: Why I Should Be On LEP (WISBOLEP) / Story: The First Time I Said F*ck", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.974679Z", + "index": 2020091601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 680, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/09/680-park-life-a-year-in-the-wildlife-of-an-urban-park-by-rick-thompson-animal-collective-nouns/", + "post_title": "680. Park Life \u2013 A Year in The Wildlife Of An Urban Park (by Rick Thompson) / Animal Collective Nouns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.966683Z", + "index": 2020090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 679, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/04/679-gills-book-club-a-gentleman-in-moscow/", + "post_title": "679. Gill\u2019s Book Club: A Gentleman In Moscow", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.958691Z", + "index": 2020090401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 678, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/28/678-the-vintage-furniture-trade-in-london-with-howard-roach/", + "post_title": "678. The Vintage Furniture Trade in London (with Howard Roach)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.951692Z", + "index": 2020082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 677, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/21/677-a-post-holiday-ramble-holiday-vocab-stories/", + "post_title": "677. A Post-Holiday Ramble / Holiday Vocab / Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.943690Z", + "index": 2020082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 676, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/01/676-david-crystal-lets-talk-how-english-conversation-works/", + "post_title": "676. David Crystal: Let\u2019s Talk \u2013 How English Conversation Works", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.936692Z", + "index": 2020080101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 675, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/24/675-an-unplanned-pre-holiday-ramble-july-2020/", + "post_title": "675. An Unplanned Pre-Holiday Ramble (July 2020)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.928695Z", + "index": 2020072401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 674, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/16/674-19-amusing-insurance-claims-car-crash-vocabulary/", + "post_title": "674. 19 Amusing Insurance Claims / Car Crash Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.921697Z", + "index": 2020071601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 673, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/07/673-conspiracies-ufos-life-hacks-with-james/", + "post_title": "673. Conspiracies / UFOs / Life Hacks (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.913704Z", + "index": 2020070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 672, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/03/672-the-rick-thompson-report-covid-brexit-blm-july-2020/", + "post_title": "672. The Rick Thompson Report: COVID / BREXIT / BLM (July 2020)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.906707Z", + "index": 2020070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 671, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/30/671-aussie-english-with-pete-smissen/", + "post_title": "671. Aussie English with Pete Smissen", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.898705Z", + "index": 2020063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 670, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/22/670-language-learning-with-james-harris/", + "post_title": "670. Language Learning with James Harris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.891711Z", + "index": 2020062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 669, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/18/669-how-to-learn-english/", + "post_title": "669. How to Learn English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.883710Z", + "index": 2020061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 668, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/13/668-lep-live-ask-me-anything-hang-out-with-luke-audio-version/", + "post_title": "668. LEP LIVE! Ask Me Anything / Hang Out With Luke (AUDIO VERSION)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.876716Z", + "index": 2020061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 667, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/08/667-four-way-call-with-alex-moz-paul/", + "post_title": "667. Four Way Call (with Alex, Moz & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.868719Z", + "index": 2020060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/07/announcement-im-doing-a-youtube-live-stream-on-wednesday-10-june-at-3pm-cet/", + "post_title": "Announcement: I\u2019m doing a YouTube Live Stream on Wednesday 10 June at 3PM CET", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.860723Z", + "index": 2020060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/29/666-part-3-favourite-scary-films-with-james/", + "post_title": "666. [Part 3] Favourite Scary Films (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.853719Z", + "index": 2020052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/27/666-part-2-frightening-experiences-with-james/", + "post_title": "666. [Part 2] Frightening Experiences (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.844728Z", + "index": 2020052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/25/666-part-1-the-number-of-the-beast-scary-music-black-sabbath-with-james/", + "post_title": "666. [Part 1] The Number of the Beast / Scary Music / Black Sabbath (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.837729Z", + "index": 2020052501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 665, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/20/665-a-chinwag-with-sebastian-marx-18-british-slang-phrases-that-americans-dont-understand/", + "post_title": "665. A Chinwag with Sebastian Marx / 18+ British slang phrases that Americans don\u2019t understand", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.829727Z", + "index": 2020052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 664, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/15/664-lockdown-ramble-with-my-wife/", + "post_title": "664. Lockdown Ramble with My Wife", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.822734Z", + "index": 2020051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 663, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/04/663-the-lockdown-lying-game-with-amber-paul/", + "post_title": "663. The Lockdown Lying Game with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.813737Z", + "index": 2020050401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 662, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/29/662-catching-up-with-amber-paul-10-surviving-lockdown-with-kids/", + "post_title": "662. Catching Up with Amber & Paul #10 (Surviving Lockdown with Kids)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.806739Z", + "index": 2020042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 661, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/17/661-an-englishman-in-los-angeles-headhunted-by-netflix-divided-by-a-common-language-with-oli-thompson/", + "post_title": "661. An Englishman in Los Angeles (with Oli)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.799738Z", + "index": 2020041701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 660, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/14/660-using-tv-series-films-to-improve-your-english/", + "post_title": "660. Using TV Series & Films to Improve Your English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.791739Z", + "index": 2020041401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 659, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/11/659-lockdown-chat-with-cara-leopold/", + "post_title": "659. Lockdown Chat with Cara Leopold", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.784742Z", + "index": 2020041101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 658, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/08/658-2-2-why-do-brits-sing-with-american-accents/", + "post_title": "658. [2/2] Why do Brits sing with American accents?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.776744Z", + "index": 2020040801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 657, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/07/657-1-2-why-do-brits-sing-with-american-accents/", + "post_title": "657. [1/2] Why do Brits sing with American accents?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.769747Z", + "index": 2020040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 656, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/31/656-british-comedy-karl-pilkingtons-monkey-news-the-ricky-gervais-show/", + "post_title": "656. British Comedy: Karl Pilkington\u2019s Monkey News / The Ricky Gervais Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.761749Z", + "index": 2020033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 655, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/28/655-coping-with-isolation-describing-feelings-and-emotions-vocabulary-experiences/", + "post_title": "655. Coping with Isolation / Describing Feelings and Emotions \u2013 Vocabulary & Experiences", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.754751Z", + "index": 2020032801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 654, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/23/654-computer-based-ielts-stories-about-the-first-time-with-jessica-beck-from-ielts-energy-podcast/", + "post_title": "654. Computer-based IELTS / Stories about The First Time\u2026 (with Jessica Beck from IELTS Energy Podcast)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.746754Z", + "index": 2020032301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 653, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/20/653-gills-book-club-the-five-the-untold-lives-of-the-women-killed-by-jack-the-ripper-by-hallie-rubenhold/", + "post_title": "653. Gill\u2019s Book Club \u2013 \u201cThe Five: The Untold Lives of the Women Killed by Jack the Ripper\u201d by Hallie Rubenhold / How to read books to improve your English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.739757Z", + "index": 2020032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 652, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/13/652-the-rick-thompson-report-coronavirus-covid-19/", + "post_title": "652. The Rick Thompson Report: Coronavirus (COVID-19)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.730760Z", + "index": 2020031302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 651, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/13/651-coronavirus-covid-19-vocabulary/", + "post_title": "651. Coronavirus (COVID-19) Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.723762Z", + "index": 2020031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 650, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/10/650-british-music-jungle-with-james/", + "post_title": "650. British Music: Jungle (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.716769Z", + "index": 2020031001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 649, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/05/649-an-unedited-ramble-march-2020-never-explain-never-apologise-no-stress-method-to-the-madness-3-songs-on-guitar/", + "post_title": "649. An Unedited Ramble (March 2020) Never Explain, Never Apologise? / No Stress / Method To The Madness / 3 Songs on Guitar", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.707772Z", + "index": 2020030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 648, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/24/648-ian-moore-returns/", + "post_title": "648. Ian Moore Returns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.700775Z", + "index": 2020022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 647, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/21/647-british-comedy-alan-partridge-part-6/", + "post_title": "647. British Comedy: Alan Partridge (Part 6)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.692777Z", + "index": 2020022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 646, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/20/646-british-comedy-alan-partridge-part-5/", + "post_title": "646. British Comedy: Alan Partridge (Part 5)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.685779Z", + "index": 2020022001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 645, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/17/645-british-comedy-alan-partridge-part-4/", + "post_title": "645. British Comedy: Alan Partridge (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.677782Z", + "index": 2020021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 644, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/14/644-the-rick-thompson-report-is-brexit-done/", + "post_title": "644. The Rick Thompson Report: Is Brexit Done?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.670784Z", + "index": 2020021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 643, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/11/643-the-intercultural-communication-dance-with-sherwood-fleming/", + "post_title": "643. The Intercultural Communication Dance with Sherwood Fleming", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.662786Z", + "index": 2020021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 642, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/06/642-the-lying-game-returns-with-amber-paul/", + "post_title": "642. The Lying Game Returns (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.655789Z", + "index": 2020020601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 641, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/02/641-catching-up-with-amber-paul-9/", + "post_title": "641. Catching Up with Amber & Paul #9", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.647791Z", + "index": 2020020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 640, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/28/640-ielts-speaking-success-with-keith-ohare/", + "post_title": "640. IELTS Speaking Success with Keith O\u2019Hare", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.640794Z", + "index": 2020012801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 639, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/23/639-3-quintessentially-british-books-that-you-might-not-know-about-with-mum/", + "post_title": "639. 3 Quintessentially British Books (that you might not know about) with Mum", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.632792Z", + "index": 2020012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 638, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/19/638-3-quintessentially-british-things-that-you-might-not-know-about-with-dad/", + "post_title": "638. 3 Quintessentially British Things (that you might not know about) with Dad", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.624799Z", + "index": 2020011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 637, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/14/637-5-quintessentially-english-things-that-you-might-not-know-about-with-james/", + "post_title": "637. 5 Quintessentially English Things (that you might not know about) with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.617797Z", + "index": 2020011401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 636, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/10/636-james-luke-discuss-star-wars-ix-spoilers-final-star-wars-episode-ever/", + "post_title": "636. James & Luke Discuss Star Wars IX (SPOILERS) Final Star Wars Episode Ever?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.609804Z", + "index": 2020011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 635, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/08/635-a-new-year-ramble-for-2020-part-2-motivation-new-years-rules-bilingual-daughter-neil-innes/", + "post_title": "635. A New Year Ramble for 2020 (Part 2) Motivation / New Year\u2019s Rules / Bilingual Daughter / Neil Innes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.602806Z", + "index": 2020010801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 634, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/06/634-a-new-year-ramble-for-2020-part-1/", + "post_title": "634. A New Year Ramble for 2020 (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.594809Z", + "index": 2020010601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 633, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/18/633-star-wars-ix-the-rise-of-skywalker-spoiler-review/", + "post_title": "633. Star Wars IX: The Rise of Skywalker (SPOILER REVIEW)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.587807Z", + "index": 2019121801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 632, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/17/632-star-wars-ix-the-rise-of-skywalker-no-spoilers/", + "post_title": "632. Star Wars IX: The Rise of Skywalker (No Spoilers!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.579814Z", + "index": 2019121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 631, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/16/631-29-awful-christmas-jokes-explained/", + "post_title": "631. 29 Awful Christmas Jokes, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.571817Z", + "index": 2019121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 630, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/09/630-the-english-guy-with-a-sitcom-on-japanese-tv-with-bj-fox/", + "post_title": "630. The English Guy with a Sitcom on Japanese TV (with BJ Fox)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.563820Z", + "index": 2019120901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 629, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/02/629-do-you-ever-with-james-strange-habits-funny-observations/", + "post_title": "629. Do you ever \u2026 ? (with James) Strange Habits & Funny Observations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.556821Z", + "index": 2019120201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 628, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/26/628-oasis-with-james/", + "post_title": "628. OASIS (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.547820Z", + "index": 2019112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 627, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/19/627-eminas-long-journey-to-english-proficiency/", + "post_title": "627. Emina\u2019s Long Journey to English Proficiency", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.539822Z", + "index": 2019111901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 626, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/13/626-the-rick-thompson-report-boris-johnsons-brexit-deal-general-election-football/", + "post_title": "626. The Rick Thompson Report: Boris Johnson\u2019s Brexit Deal / General Election / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.529830Z", + "index": 2019111302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 625, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/13/625-88-english-expressions-that-will-confuse-everyone-part-2/", + "post_title": "625. 88 English expressions that will confuse everyone (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.522833Z", + "index": 2019111301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 624, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/07/624-88-english-expressions-that-will-confuse-everyone-part-1/", + "post_title": "624. 88 English expressions that will confuse everyone (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.514836Z", + "index": 2019110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 623, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/29/623-13-terrible-jokes-explained/", + "post_title": "623. 13 Terrible Jokes, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.507837Z", + "index": 2019102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 622, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/22/422-general-ramble-oct-2019-learning-english-politics-recording-setup-book-recommendation-beatles-star-wars-bill-bailey/", + "post_title": "622. General Ramble (Oct 2019) Learning English / Politics / Recording Setup / Book Recommendation / Beatles / Star Wars / Bill Bailey", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.500841Z", + "index": 2019102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 621, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/14/621-british-tv-dragons-den-part-3-discord-in-the-den/", + "post_title": "621. British TV: Dragons\u2019 Den (Part 3) Discord in the Den", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.492842Z", + "index": 2019101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 620, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/11/620-british-tv-dragons-den-part-2-negotiation/", + "post_title": "620. British TV: Dragons\u2019 Den (Part 2) Negotiation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.485844Z", + "index": 2019101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 619, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/09/619-british-tv-dragons-den-part-1-vocabulary/", + "post_title": "619. British TV: Dragons\u2019 Den (Part 1) Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.477847Z", + "index": 2019100901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 618, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/30/618-the-climate-crisis-explained-in-10-charts-with-cara-leopold/", + "post_title": "618. The Climate Crisis Explained in 10 Charts (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.469850Z", + "index": 2019093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 617, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/26/617-sales-and-advertising-with-paul-taylor/", + "post_title": "617. Sales and Advertising (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.461852Z", + "index": 2019092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 616, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/23/616-can-you-find-the-15-idioms-with-paul-taylor/", + "post_title": "616. Can you find the 15 idioms? (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.454856Z", + "index": 2019092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 615, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/17/615-paul-taylor-became-a-dad-and-you-wont-believe-what-happened-next/", + "post_title": "615. Paul Taylor Became a Dad, and you won\u2019t believe what happened next", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.446858Z", + "index": 2019091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 614, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/13/614-another-murder-mystery-detective-story-part-3/", + "post_title": "614. Another Murder Mystery Detective Story (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.439860Z", + "index": 2019091301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 613, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/09/613-another-murder-mystery-detective-story-part-2/", + "post_title": "613. Another Murder Mystery Detective Story (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.430858Z", + "index": 2019090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 612, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/06/612-another-murder-mystery-detective-story-part-1/", + "post_title": "612. Another Murder Mystery Detective Story (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.422860Z", + "index": 2019090601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 611, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/03/611-top-10-jokes-from-edinburgh-fringe-2019/", + "post_title": "611. Top 10 Jokes from Edinburgh Fringe 2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.415864Z", + "index": 2019090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 610, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/30/610-british-comedy-james-acaster/", + "post_title": "610. British Comedy: James Acaster", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.407870Z", + "index": 2019083001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 609, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/28/609-the-lep-meetup-in-london-brexit-talking-to-my-daughter/", + "post_title": "609. The LEP MeetUp in London / Brexit / Talking to my Daughter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.400873Z", + "index": 2019082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 608, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/21/608-the-mass-observation-with-mum/", + "post_title": "608. The Mass Observation (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.392875Z", + "index": 2019082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 607, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/09/607-the-rick-thompson-report-boris-johnson-pm-no-deal-brexit/", + "post_title": "607. The Rick Thompson Report: Boris Johnson PM / No Deal Brexit?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.384874Z", + "index": 2019080901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 606, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/25/606-the-english-seaside-with-james/", + "post_title": "606. The English Seaside (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.376880Z", + "index": 2019072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 605, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/18/605-unexpected-road-trip-with-james/", + "post_title": "605. Unexpected Road Trip (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.369878Z", + "index": 2019071801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 604, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/05/604-london-native-speaker-interviews-revisited-part-2/", + "post_title": "604. London Native Speaker Interviews REVISITED Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.360881Z", + "index": 2019070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 603, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/01/603-queen-freddie-mercury-bohemian-rhapsody/", + "post_title": "603. Queen / Freddie Mercury / Bohemian Rhapsody", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.353889Z", + "index": 2019070101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 602, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/27/602-british-comedy-the-day-today-part-2/", + "post_title": "602. British Comedy: The Day Today (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.344891Z", + "index": 2019062701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 601, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/24/601-british-comedy-the-day-today-part-1/", + "post_title": "601. British Comedy: The Day Today (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.337893Z", + "index": 2019062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/18/quick-hello-opp-living-through-comedy-somewhere-else-dreamin/", + "post_title": "Quick Hello / OPP / Living Through Comedy / Somewhere Else Dreamin\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.329896Z", + "index": 2019061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 600, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/08/600-episode-600-youtube-livestream-ask-me-anything/", + "post_title": "600. Episode 600 YouTube Livestream \u2013 Ask Me Anything", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.322894Z", + "index": 2019060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 599, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/03/599-oliver-gee-returns-with-stories-to-tell/", + "post_title": "599. Oliver Gee Returns with Stories to Tell", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.314901Z", + "index": 2019060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 598, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/28/598-the-rick-thompson-report-eu-elections-theresa-may-brexit-football/", + "post_title": "598. The Rick Thompson Report: EU Elections / Theresa May / Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.307903Z", + "index": 2019052801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/27/hello-here-are-the-details-of-the-episode-600-youtube-live-stream/", + "post_title": "Hello! Here are the details of the Episode 600 YouTube live stream", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.299906Z", + "index": 2019052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 597, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/23/597-growing-up-getting-older-becoming-a-father-with-paul-taylor/", + "post_title": "597. Growing Up / Getting Older / Becoming a Father (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.292910Z", + "index": 2019052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 596, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/20/596-sleep-with-amber-paul/", + "post_title": "596. SLEEP with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.284906Z", + "index": 2019052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 595, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/15/595-andy-johnson-returns-part-2-eating-tv-series-football-music/", + "post_title": "595. Andy Johnson Returns (Part 2) Eating / TV Series / Football / Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.276914Z", + "index": 2019051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 594, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/13/594-andy-johnson-returns-part-1-moving-house-london-vs-canterbury-english-teaching/", + "post_title": "594. Andy Johnson Returns (Part 1) Moving House / London vs Canterbury / English Teaching", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.269915Z", + "index": 2019051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 593, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/10/593-going-through-pages-in-an-old-diary/", + "post_title": "593. Going through pages in an old diary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.261918Z", + "index": 2019051001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 592, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/07/592-it-always-seems-impossible-until-its-done/", + "post_title": "592. It always seems impossible until it\u2019s done", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.253921Z", + "index": 2019050701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 591, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/29/591-london-native-speaker-interviews-revisited-part-1/", + "post_title": "591. London Native Speaker Interviews REVISITED (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.245924Z", + "index": 2019042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 590, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/24/590-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", + "post_title": "590. [2/2] Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.238926Z", + "index": 2019042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 589, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/23/589-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", + "post_title": "589. Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.230928Z", + "index": 2019042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 588, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/19/588-punctuation-rules-book-review-part-2-apostrophe-full-stop-comma/", + "post_title": "588. Punctuation Rules / Book Review (Part 2) Apostrophe, Full Stop, Comma", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.223930Z", + "index": 2019041901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 587, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/18/587-punctuation-rules-book-review-part-1/", + "post_title": "587. Punctuation Rules / Book Review (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.215929Z", + "index": 2019041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/12/its-leps-10th-birthday/", + "post_title": "It\u2019s LEP\u2019s 10th Birthday!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.207931Z", + "index": 2019041201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 586, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/06/586-the-importance-of-listening/", + "post_title": "586. The Importance of Listening", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.200938Z", + "index": 2019040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 585, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/29/585-alternative-british-citizenship-tests-with-paul-taylor/", + "post_title": "585. Alternative British Citizenship Tests with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.192936Z", + "index": 2019032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 584, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/25/584-posh-or-not-posh-part-3-with-amber-paul/", + "post_title": "584. Posh or not posh? (Part 3) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.185938Z", + "index": 2019032501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 583, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/20/583-british-comedy-the-dirty-fork-restaurant-sketch-monty-python/", + "post_title": "583. British Comedy: The Dirty Fork / Restaurant Sketch (Monty Python)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.177945Z", + "index": 2019032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 582, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/15/582-posh-or-not-posh-part-2-guess-the-posh-british-celebrities/", + "post_title": "582. Posh or not posh? (Part 2) Guess the Posh British Celebrities", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.170950Z", + "index": 2019031501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 581, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/13/581-posh-or-not-posh-part-1-understanding-posh-people-and-posh-accents/", + "post_title": "581. Posh or not posh? (Part 1) Understanding Posh People and Posh Accents", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.162952Z", + "index": 2019031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 580, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/08/580-ramble-listener-comments-robots-vampires-two-taps-in-the-bathroom/", + "post_title": "580. Ramble / Listener Comments / Robots / Vampires / Two Taps in the Bathroom", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.155955Z", + "index": 2019030801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 579, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/01/579-2-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", + "post_title": "579. [2/2] IELTS Q&A with Ben Worthington from IELTS Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.146958Z", + "index": 2019030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 578, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/28/578-1-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", + "post_title": "578. [1/2] IELTS Q&A with Ben Worthington from IELTS Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.139960Z", + "index": 2019022801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 577, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/14/577-uk-vs-us-slang-game-with-jennifer-from-english-across-the-pond/", + "post_title": "577. UK vs US Slang Game (with Jennifer from English Across the Pond)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.131956Z", + "index": 2019021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/05/website-post-i-was-on-the-rock-roll-english-podcast-again-new-premium-episodes-coming-throughout-february/", + "post_title": "[Website post] I was on the Rock & Roll English Podcast again / New Premium episodes coming throughout February", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.124963Z", + "index": 2019020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 576, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/02/576-talking-about-comedy-books-films-music-with-james/", + "post_title": "576. Talking about Comedy, Books, Films & Music with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.116966Z", + "index": 2019020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 575, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/30/575-british-comedy-paul-chowdhry/", + "post_title": "575. British Comedy: Paul Chowdhry", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.109963Z", + "index": 2019013001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 574, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/25/574-2-2-the-rick-thompson-report-brexit-qa-january-2019/", + "post_title": "574. [2/2] The Rick Thompson Report: Brexit Q&A (January 2019)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.101966Z", + "index": 2019012502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 573, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/25/573-1-2-the-rick-thompson-report-brexit-update-january-2019/", + "post_title": "573. [1/2] The Rick Thompson Report: Brexit Update (January 2019)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.093973Z", + "index": 2019012501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 572, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/20/572-worst-stand-up-gig-experiences-with-amber-paul/", + "post_title": "572. Worst Stand-up Gig Experiences (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.086975Z", + "index": 2019012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 571, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/16/571-bill-burrs-hilarious-plane-story-enjoy-comedy-storytelling-in-english/", + "post_title": "571. Bill Burr\u2019s Hilarious Plane Story \u2013 Enjoy Comedy/Storytelling in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.078978Z", + "index": 2019011601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 570, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/11/570-learning-teaching-english-with-zdenek-lukas-part-2/", + "post_title": "570. Learning & Teaching English with Zdenek Lukas (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.071980Z", + "index": 2019011102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 569, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/11/569-learning-teaching-english-with-zdenek-lukas-part-1/", + "post_title": "569. Learning & Teaching English with Zdenek Lukas (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.063983Z", + "index": 2019011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 568, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/07/568-what-is-lukes-english-podcast-and-how-can-it-help-you-with-your-english/", + "post_title": "568. What is Luke\u2019s English Podcast, and how can it help you with your English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.055985Z", + "index": 2019010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 567, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/21/567-alternative-christmas-stories-poems-beatles-happy-new-year-from-lep/", + "post_title": "567. Alternative Christmas Stories & Poems / Beatles / Happy New Year from LEP!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.047988Z", + "index": 2018122101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 566, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/19/566-the-collins-words-of-the-year-part-6-2018-with-amber-minogue/", + "post_title": "566. The Collins Words of the Year (Part 6) 2018 with Amber Minogue", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.040991Z", + "index": 2018121901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 565, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/17/565-the-collins-words-of-the-year-part-5-2018-with-amber-minogue/", + "post_title": "565. The Collins Words of the Year (Part 5) 2018 with Amber Minogue", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.033988Z", + "index": 2018121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 564, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/13/564-the-collins-words-of-the-year-part-4/", + "post_title": "564. The Collins Words of the Year (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.025990Z", + "index": 2018121301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 563, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/11/563-the-collins-words-of-the-year-part-3/", + "post_title": "563. The Collins Words of the Year (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.018994Z", + "index": 2018121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 562, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/10/562-the-collins-words-of-the-year-part-2/", + "post_title": "562. The Collins Words of the Year (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.010996Z", + "index": 2018121001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 561, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/07/561-the-collins-words-of-the-year-part-1/", + "post_title": "561. The Collins Words of the Year (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.002998Z", + "index": 2018120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 560, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/03/560-sarah-donnelly-returns-writing-jokes-public-speaking-doing-comedy-in-another-language/", + "post_title": "560. Sarah Donnelly Returns \u2013 Writing jokes, public speaking, doing comedy in another language", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.996000Z", + "index": 2018120301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 559, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/20/559-the-rick-thompson-report-brexit-chaos-november-2018/", + "post_title": "559. The Rick Thompson Report: Brexit Chaos (November 2018)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.988003Z", + "index": 2018112001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 558, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/15/558-rambling-in-the-new-sky-pod/", + "post_title": "558. Rambling in the new Sky-Pod", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.980006Z", + "index": 2018111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/09/a-letter-from-luke-9-nov-2018/", + "post_title": "A Letter from Luke \u2013 9 Nov. 2018", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.973063Z", + "index": 2018110901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 557, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/29/557-im-a-rambling-guy-monologue-autumn-2018/", + "post_title": "557. I\u2019m a Rambling Guy (Monologue \u2013 Autumn 2018)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.965067Z", + "index": 2018102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 556, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/24/556-with-jessica-beck-from-honestly-english/", + "post_title": "556. With Jessica Beck from Honestly English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.958068Z", + "index": 2018102401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 555, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/22/555-raphael-millers-summer-school-report/", + "post_title": "555. Raphael Miller\u2019s Summer School Report", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.950067Z", + "index": 2018102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 554, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/18/554-odd-news-stories-with-mum-dad/", + "post_title": "554. ODD NEWS STORIES (with Mum & Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.942073Z", + "index": 2018101801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 553, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/15/553-fighting-wildland-fires-with-benny-the-russian-firefighter/", + "post_title": "553. Fighting Wildland Fires with Benny the Russian Firefighter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.935076Z", + "index": 2018101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 552, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/05/552-discussing-comedy-culture-with-amber-paul/", + "post_title": "552. Discussing Comedy & Culture (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.927078Z", + "index": 2018100501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 551, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/01/551-catching-up-with-amber-paul-8-stereotypes/", + "post_title": "551. Catching Up with Amber & Paul #8 \u2013 Stereotypes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.920082Z", + "index": 2018100101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 550, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/28/550-british-comedy-alan-partridge-part-3/", + "post_title": "550. British Comedy: Alan Partridge (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.912078Z", + "index": 2018092801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 549, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/26/549-british-comedy-alan-partridge-part-2/", + "post_title": "549. British Comedy: Alan Partridge (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.905081Z", + "index": 2018092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 548, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/25/548-british-comedy-alan-partridge-part-1/", + "post_title": "548. British Comedy: Alan Partridge (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.896088Z", + "index": 2018092501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 547, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/19/547-best-jokes-from-the-edinburgh-festival-fringe/", + "post_title": "547. Best Jokes from the Edinburgh Festival Fringe", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.889091Z", + "index": 2018091901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 546, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/11/546-death-by-meteor/", + "post_title": "546. Death by Meteor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.881094Z", + "index": 2018091101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 545, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/07/545-the-hitchhiker-by-roald-dahl-short-story/", + "post_title": "545. The Hitchhiker by Roald Dahl (Short Story)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.874091Z", + "index": 2018090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 544, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/27/544-the-rick-thompson-report-no-deal-brexit/", + "post_title": "544. The Rick Thompson Report: No Deal Brexit", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.866095Z", + "index": 2018082701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 543, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/23/543-britains-first-insect-restaurant-opens/", + "post_title": "543. Britain\u2019s First Insect Restaurant Opens", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.858102Z", + "index": 2018082301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 542, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/21/542-talking-rubbish-just-having-fun-with-the-thompsons/", + "post_title": "542. Talking Rubbish & Just Having Fun with The Thompsons", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.850104Z", + "index": 2018082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 541, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/31/541-what-british-people-say-vs-what-they-mean/", + "post_title": "541. What British People Say vs What They Mean", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.842107Z", + "index": 2018073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 540, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/21/540-whats-up-post-world-cup-news-lep-meetup-london-super-mario-earworms/", + "post_title": "540. What\u2019s Up? Post World Cup / News / LEP Meetup London / Super Mario Earworms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.834109Z", + "index": 2018072101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 539, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/09/539-world-cup-2018-3-is-it-coming-home/", + "post_title": "539. World Cup 2018 [3] Is It Coming Home?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.826112Z", + "index": 2018070901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 538, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/05/538-world-cup-2018-2-the-second-round-listener-comments/", + "post_title": "538. World Cup 2018 [2] The Second Round / Listener Comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.819110Z", + "index": 2018070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 537, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/02/537-how-olly-richards-learns-a-language-part-2-intermediate-plateau-the-magic-of-story-pronunciation-personality-classroom-vs-self-guided-learning/", + "post_title": "537. How Olly Richards Learns a Language (Part 2) Intermediate Plateau / The Magic of Story / Pronunciation & Personality / Classroom vs Self-Guided Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.811111Z", + "index": 2018070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 536, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/29/536-how-olly-richards-learns-a-language-part-1-compelling-material-input-based-learning/", + "post_title": "536. How Olly Richards Learns a Language (Part 1) Compelling Material / Input-based Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.804114Z", + "index": 2018062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 535, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/26/535-world-cup-2018-1/", + "post_title": "535. World Cup 2018 [1]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.796116Z", + "index": 2018062601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/22/lep-premium-is-now-live-teacherluke-co-uk-premium/", + "post_title": "LEP PREMIUM is now live \u2013 teacherluke.co.uk/premium", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.789119Z", + "index": 2018062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 534, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/15/534-sugar-sammy-interview-part-2-language-comedy/", + "post_title": "534. Sugar Sammy Interview (Part 2) Language & Comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.781122Z", + "index": 2018061501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 533, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/13/533-sugar-sammy-interview-part-1-multilingual-comedian/", + "post_title": "533. Sugar Sammy Interview (Part 1) Multilingual Comedian", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.774129Z", + "index": 2018061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 532, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/08/532-a-history-of-the-world-cup/", + "post_title": "532. A History of The World Cup", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.766128Z", + "index": 2018060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 531, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/06/531-crime-vocabulary-quiz-with-moz/", + "post_title": "531. Crime Vocabulary Quiz (with Moz)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.758129Z", + "index": 2018060601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 530, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/03/530-more-murder-stories-with-moz/", + "post_title": "530. More Murder Stories (with Moz)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.751132Z", + "index": 2018060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 529, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/29/529-the-m-word-with-andy-johnson/", + "post_title": "529. The \u201cM\u201d Word (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.743134Z", + "index": 2018052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 528, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/23/528-the-royal-wedding-with-mum/", + "post_title": "528. The Royal Wedding (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.736137Z", + "index": 2018052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 527, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/18/527-can-paul-taylor-pass-the-uk-citizenship-test/", + "post_title": "527. Can Paul Taylor Pass The UK Citizenship Test?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.728140Z", + "index": 2018051801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 526, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/15/526-being-a-tourist-with-paul-taylor/", + "post_title": "526. Being a Tourist (with Paul Taylor) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.720142Z", + "index": 2018051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/14/31807/", + "post_title": "Please VOTE for LEP in the British Podcast Awards 2018 \u2013 Voting Ends on Thursday 17 May", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.712150Z", + "index": 2018051401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 525, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/08/525-ninja-august-podcast-corrections-useful-japanese-cat-listener-comments-questions/", + "post_title": "525. Ninja August / Podcast Corrections / Useful Japanese Cat (Listener Comments & Questions)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.705151Z", + "index": 2018050801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 524, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/04/524-tricky-pronunciation-debates-either-neither-grammar-nazi-sketch/", + "post_title": "524. Tricky Pronunciation Debates / \u201cEither\u201d \u201cNeither\u201d / Song + Comedy Sketch", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.697154Z", + "index": 2018050401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 523, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/24/523-tips-for-learning-english-with-films-tv-shows-with-cara-leopold/", + "post_title": "523. Tips for Learning English with Films & TV Shows (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.690156Z", + "index": 2018042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 522, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/", + "post_title": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.682155Z", + "index": 2018041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 521, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/13/520-talking-about-pets-with-james/", + "post_title": "521. Talking about Pets (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.675161Z", + "index": 2018041301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 520, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/03/520-idioms-game-chat-part-2-with-andy-johnson-18-more-idioms-vocab-items-explained/", + "post_title": "520. Idioms Game & Chat Part 2 (with Andy Johnson) + 18 More Idioms & Vocab Items Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.667159Z", + "index": 2018040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 519, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/29/519-idioms-game-chat-with-andy-johnson-25-idioms-explained/", + "post_title": "519. Idioms Game & Chat (with Andy Johnson) + 25 Idioms Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.659162Z", + "index": 2018032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 518, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/21/518-grammar-questions-part-1-present-perfect-continuous-future-continuous-language-of-newspaper-headlines/", + "post_title": "518. Grammar Questions (Part 1) Present Perfect Continuous / Future Continuous / Language of Newspaper Headlines", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.652164Z", + "index": 2018032101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 517, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/14/517-professor-stephen-hawking/", + "post_title": "517. Professor Stephen Hawking (An Obituary)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.644166Z", + "index": 2018031401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 516, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/10/516-paul-mccartneys-spider-story/", + "post_title": "516. Paul McCartney\u2019s Spider Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.637168Z", + "index": 2018031001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 515, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/06/515-becoming-maman-with-amber-sarah-bringing-up-children-the-french-way/", + "post_title": "515. Becoming \u201cMaman\u201d with Amber & Sarah \u2013 Bringing Up Children The French Way", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.629171Z", + "index": 2018030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 514, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/01/514-whats-on-the-table-with-fred-alex/", + "post_title": "514. What\u2019s on the table? (with Fred & Alex)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.622173Z", + "index": 2018030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 513, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/23/513-general-ramble-news-comments/", + "post_title": "513. General Ramble / News / Comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.614177Z", + "index": 2018022301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/21/website-only-i-was-on-the-becoming-maman-podcast-with-amber-minogue-sarah-donnelly/", + "post_title": "[Website-only] I was on the \u201cBecoming Maman\u201d podcast with Amber Minogue & Sarah Donnelly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.606179Z", + "index": 2018022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 512, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/16/512-my-experiences-of-not-learning-french-part-2-learning-language-in-a-classroom-vs-learning-on-your-own/", + "post_title": "512. My Experiences of (not) Learning French [Part 2] Learning Language in a Classroom vs Learning On Your Own", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.598182Z", + "index": 2018021601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 511, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/13/511-my-experiences-of-not-learning-french-part-1/", + "post_title": "511. My Experiences of (not) Learning French [Part 1]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.591183Z", + "index": 2018021301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 510, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/05/510-philosophy-quiz-with-amber-paul/", + "post_title": "510. Philosophy Quiz (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.584186Z", + "index": 2018020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 509, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/01/509-whats-it-all-about-philosophy-and-language-learning/", + "post_title": "509. What\u2019s it all about? (Philosophy and Language Learning)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.575189Z", + "index": 2018020101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 508, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/27/508-six-true-crime-stories-from-victorian-england-told-by-my-dad/", + "post_title": "508. Six True Crime Stories from Victorian England, Told by My Dad", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.568191Z", + "index": 2018012701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 507, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/21/british-comedy-tv-shows-to-learn-english-some-british-comedy-tv-show-recommendations/", + "post_title": "507. Learning English with UK Comedy TV Shows", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.559195Z", + "index": 2018012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 506, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/15/506-one-of-britains-favourite-poems/", + "post_title": "506. One of Britain\u2019s Favourite Poems", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.551197Z", + "index": 2018011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 505, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/12/505-a-chat-with-dad-james-about-star-wars-the-last-jedi-with-vocabulary/", + "post_title": "505. A Chat with Dad & James about Star Wars: The Last Jedi (with Vocabulary)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.542200Z", + "index": 2018011201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 504, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/11/504-my-review-of-star-wars-the-last-jedi-part-2/", + "post_title": "504. My Review of Star Wars: The Last Jedi (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.532204Z", + "index": 2018011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 503, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/10/503-my-review-of-star-wars-the-last-jedi-part-1/", + "post_title": "503. My Review of Star Wars: The Last Jedi (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.524212Z", + "index": 2018011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 502, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/03/502-the-birth-of-my-daughter/", + "post_title": "502. The Birth of My Daughter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.517209Z", + "index": 2018010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 501, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/24/501-merry-christmas-listener-correspondence/", + "post_title": "501. Merry Christmas! / Listener Correspondence", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.508218Z", + "index": 2017122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/22/observations-on-the-paris-metro-from-inside-the-metro-listen-to-my-appearance-on-oliver-gees-podcast-the-earful-tower/", + "post_title": "Observations on the Paris Metro\u2026 from Inside the Metro (Listen to my appearance on Oliver Gee\u2019s podcast \u201cThe Earful Tower\u201d)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.501213Z", + "index": 2017122201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 500, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/17/500-12-episode-500-celebration-part-1/", + "post_title": "500. EPISODE 500 CELEBRATION! (PARTS 1 & 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.493221Z", + "index": 2017121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 499, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/11/499-prince-harry-meghan-markle-royal-family-quiz-with-amber/", + "post_title": "499. Prince Harry & Meghan Markle / Royal Family Quiz (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.486219Z", + "index": 2017121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 498, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/08/498-the-rick-thompson-report-brexit-negotiations/", + "post_title": "498. The Rick Thompson Report: Brexit Negotiations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.476223Z", + "index": 2017120801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 497, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/04/497-film-club-withnail-i-with-james-and-will/", + "post_title": "497. Film Club: Withnail & I (with James and Will)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.469229Z", + "index": 2017120401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 496, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/29/496-ramblecast/", + "post_title": "496. RAMBLECAST", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.461232Z", + "index": 2017112901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 495, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/26/495-australian-stereotypes-and-cliches-with-oliver-gee-didgeridoo-sounds/", + "post_title": "495. Australian Stereotypes and Cliches (with Oliver Gee) ~didgeridoo sounds~", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.453234Z", + "index": 2017112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 494, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/21/494-who-wants-to-be-good-at-english-the-rematch-with-rick-thompson/", + "post_title": "494. Who Wants to be Good at English? (The Rematch) with Rick Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.445232Z", + "index": 2017112101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 493, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/17/493-catching-up-with-amber-paul-7-human-pollution/", + "post_title": "493. Catching Up with Amber & Paul #7 (Human Pollution)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.438240Z", + "index": 2017111701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 492, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/12/492-becoming-a-dad-with-andy-ben-part-2/", + "post_title": "492. Becoming a Dad (with Andy & Ben) Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.430243Z", + "index": 2017111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 491, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/08/491-becoming-a-dad-with-andy-ben-part-1/", + "post_title": "491. Becoming a Dad (with Andy & Ben) Part 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.423243Z", + "index": 2017110801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 490, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/03/490-discussing-friendship-with-martin-and-dan-the-man-from-rock-n-roll-english-friendship-phrasal-verbs/", + "post_title": "490. Discussing Friendship \u2013 with Martin and Dan The Man from Rock n\u2019 Roll English (Friendship Phrasal Verbs)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.416247Z", + "index": 2017110301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 489, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/30/489-a-rambling-conversation-with-mum-part-2-vocabulary/", + "post_title": "489. A Rambling Conversation with Mum (Part 2) + Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.408244Z", + "index": 2017103001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 488, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/26/488-a-rambling-conversation-with-mum-part-1-vocabulary/", + "post_title": "488. A Rambling Conversation with Mum (Part 1) + Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.401251Z", + "index": 2017102601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 487, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/22/487-learning-languages-and-adapting-to-new-cultures-with-ethan-from-reallife-english/", + "post_title": "487. Learning Languages and Adapting to New Cultures (with Ethan from RealLife English)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.393253Z", + "index": 2017102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 485, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/13/difficult-words-to-pronounce-in-english-with-paul-taylor/", + "post_title": "485. & 486. Difficult Words to Pronounce in English (with Paul Taylor) (Parts 1 & 2) + video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.386256Z", + "index": 2017101301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 484, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/08/484-try-not-to-laugh-on-the-bus-with-paul-taylor/", + "post_title": "484. Try not to Laugh on the Bus (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.378259Z", + "index": 2017100801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/04/the-flat-earth-podcast-and-this-is-what-happened/", + "post_title": "I was invited onto The Flat Earth Podcast, and this is what happened\u2026 [Website only]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.371261Z", + "index": 2017100401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 483, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/01/483-a-rambling-chat-with-moz/", + "post_title": "483. A Rambling Chat with Moz", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.362263Z", + "index": 2017100101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 482, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/26/482-the-murder-mile-true-crime-podcast-with-moz-more-creepy-stories-of-murders-in-london/", + "post_title": "482. The Murder Mile True Crime Podcast (with Moz) More Creepy Stories of Murders in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.354262Z", + "index": 2017092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/24/website-content-luke-on-the-real-life-english-podcast/", + "post_title": "[Website content] Luke on the RealLife English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.346265Z", + "index": 2017092401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 481, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/20/481-holiday-diary-final-part-endeavour-to-persevere/", + "post_title": "481. Holiday Diary (Final Part) \u201cEndeavour to Persevere\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.338272Z", + "index": 2017092001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 480, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/18/480-holiday-diary-part-7-big-rocks/", + "post_title": "480. Holiday Diary (Part 7) BIG ROCKS!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.331274Z", + "index": 2017091801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 479, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/15/479-holiday-diary-part-6-the-madness-of-las-vegas-11-gambling-idioms/", + "post_title": "479. Holiday Diary (Part 6) The Madness of Las Vegas / 11 Gambling Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.323277Z", + "index": 2017091501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 478, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/12/478-holiday-diary-part-5-an-encounter-with-the-church-of-scientology/", + "post_title": "478. Holiday Diary (Part 5) An Encounter with The Church of Scientology", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.316278Z", + "index": 2017091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 477, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/09/477-holiday-diary-part-4-the-fresh-prince-of-bel-air/", + "post_title": "477. Holiday Diary (Part 4) The Fresh Prince of Bel Air", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.308282Z", + "index": 2017090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 476, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/03/476-holiday-diary-part-3-astronomy-astrology-flat-earth-conspiracy-theory/", + "post_title": "476. Holiday Diary (Part 3) Astronomy, Astrology & Flat Earth Conspiracy Theory", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.301285Z", + "index": 2017090302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 475, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/03/475-holiday-diary-part-2-modern-art-is-it-amazing-or-is-it-rubbish/", + "post_title": "475. Holiday Diary (Part 2) Modern Art: Is it amazing, or is it rubbish?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.293286Z", + "index": 2017090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 474, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/31/474-holiday-diary-part-1/", + "post_title": "474. Holiday Diary (Part 1) New Arrival, New Destinations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.286288Z", + "index": 2017083101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 473, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/22/473-explaining-the-rules-of-cricket-with-dad/", + "post_title": "473. Explaining the Rules of Cricket (with Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.213313Z", + "index": 2017082201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/18/website-only-star-wars-dvd-commentary-with-james/", + "post_title": "[Website Only] Star Wars DVD Commentary (with James) ***Contains swearing \u2013 Not suitable for Children***", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.205315Z", + "index": 2017081801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/15/why-does-the-uk-have-so-many-accents-recorded-february-2017/", + "post_title": "Why does the UK have so many accents? (Recorded February 2017)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.197313Z", + "index": 2017081501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/", + "post_title": "Luke\u2019s Criminal Past (ZEP Episode 185)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.190516Z", + "index": 2017081401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 472, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/10/472-andy-johnson-at-the-london-school-of-english-part-2-why-andy-runs-marathons/", + "post_title": "472. Andy\u2019s Survival Story / Why Andy Runs Marathons (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.182520Z", + "index": 2017081001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 471, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/06/471-andy-johnson-at-the-london-school-of-english-part-1-lego-self-directed-learning-accents/", + "post_title": "471. Stepping on Lego, Self-directed Learning, Accents (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.174521Z", + "index": 2017080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/02/ive-got-something-to-tell-you-im-leaving/", + "post_title": "I\u2019m going on holiday \u2013 back in a few weeks!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.167524Z", + "index": 2017080201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 470, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/31/470-understanding-the-liverpool-accent/", + "post_title": "470. Understanding the Liverpool Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.159533Z", + "index": 2017073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 469, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/27/469-british-comedy-john-bishop/", + "post_title": "469. British Comedy: John Bishop", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.152533Z", + "index": 2017072701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 468, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/24/468-punk-music-culture-with-james/", + "post_title": "468. Punk \u2013 Music & Culture (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.144531Z", + "index": 2017072401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 467, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/20/467-a-boiling-hot-evening-ramble-comments-questions/", + "post_title": "467. A Boiling-Hot Evening Ramble \u2013 Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.137534Z", + "index": 2017072001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 466, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/15/466-get-this-word-into-your-life/", + "post_title": "466. Get this word into your life", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.129536Z", + "index": 2017071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 465, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/10/465-how-i-make-episodes-of-the-podcast-part-2/", + "post_title": "465. How I make episodes of the podcast (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.121545Z", + "index": 2017071001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 464, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/06/464-how-i-make-episodes-of-the-podcast-part-1/", + "post_title": "464. How I make episodes of the podcast (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.113548Z", + "index": 2017070601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 463, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/03/463-news-comments-questions/", + "post_title": "463. News, Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.106548Z", + "index": 2017070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 462, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/28/462-british-comedy-bill-bailey/", + "post_title": "462. British Comedy: Bill Bailey", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.099547Z", + "index": 2017062801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 461, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/24/461-25-deceptively-difficult-questions-with-amber-paul-sarah/", + "post_title": "461. 25 Deceptively Difficult Questions (with Amber, Paul & Sarah)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.091549Z", + "index": 2017062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 460, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/20/460-catching-up-with-amber-paul-6-feat-sarah-donnelly/", + "post_title": "460. Catching Up With Amber & Paul #6 (feat. Sarah Donnelly)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.083557Z", + "index": 2017062001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 459, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/17/459-lazing-on-a-sunny-afternoon/", + "post_title": "459. Lazing on a Sunny Afternoon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.075559Z", + "index": 2017061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/15/i-was-on-the-rock-n-roll-english-podcast-and-the-earful-tower-podcast-this-week/", + "post_title": "[Website content] I was on The Rock n\u2019 Roll English Podcast and The Earful Tower Podcast this week", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.068562Z", + "index": 2017061501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 458, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/14/458-the-rick-thompson-report-post-election-2017/", + "post_title": "458. The Rick Thompson Report: Post-Election 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.060563Z", + "index": 2017061401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 457, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/09/457-conclusions-about-language-learning-from-the-david-crystal-interview-part-2/", + "post_title": "457. Conclusions about Language Learning from the David Crystal Interview (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.053565Z", + "index": 2017060902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 456, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/09/456-conclusions-about-language-learning-from-the-david-crystal-interview-part-1/", + "post_title": "456. Conclusions about Language Learning from the David Crystal Interview (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.045568Z", + "index": 2017060901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 455, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/06/455-david-crystal-interview-part-2-questions-from-listeners/", + "post_title": "455. David Crystal Interview (Part 2) Questions from Listeners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.038571Z", + "index": 2017060601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/01/30029/", + "post_title": "A Message from Amber", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.030569Z", + "index": 2017060101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 454, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/31/454-david-crystal-interview-part-1-professor-of-linguistics/", + "post_title": "454. David Crystal Interview (Part 1) Professor of Linguistics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.023576Z", + "index": 2017053101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 453, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/27/453-the-36-questions-that-lead-to-love-with-amber-paul/", + "post_title": "453. The 36 Questions that Lead to Love (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.015574Z", + "index": 2017052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 452, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/24/452-a-conversation-about-language-with-amber-paul/", + "post_title": "452. A Conversation About Language (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.956597Z", + "index": 2017052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 451, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/22/451-film-club-alien-covenant/", + "post_title": "451. Film Club: Alien Covenant", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.949596Z", + "index": 2017052201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 450, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/16/450-comments-questions/", + "post_title": "450. Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.941602Z", + "index": 2017051601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 449, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/13/449-film-club-touching-the-void-part-2/", + "post_title": "449. Film Club: Touching the Void (Part 2) Learning a Language is Like Climbing a Mountain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.934600Z", + "index": 2017051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 448, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/12/448-film-club-touching-the-void-part-1/", + "post_title": "448. Film Club: Touching The Void (Part 1) Learning a Language is Like Climbing a Mountain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.926608Z", + "index": 2017051201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 447, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/08/447-what-is-this-british-humour/", + "post_title": "447. What is this, British Humour? (with Amber Minogue)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.919609Z", + "index": 2017050801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 446, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/05/446-british-tv-top-gear/", + "post_title": "446. British TV: Top Gear", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.911612Z", + "index": 2017050501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 445, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/01/445-british-podcast-award-hello-to-new-listeners-17-vocabulary-expressions/", + "post_title": "445. British Podcast Award / Hello to New Listeners / 17 Vocabulary Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.904615Z", + "index": 2017050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 444, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/25/444-the-rick-thompson-report-snap-general-election-2017/", + "post_title": "444. The Rick Thompson Report: Snap General Election 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.896613Z", + "index": 2017042501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 443, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/21/443-the-trip-to-japan-part-2/", + "post_title": "443. The Trip to Japan (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.888622Z", + "index": 2017042102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 442, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/21/442-the-trip-to-japan-part-1/", + "post_title": "442. The Trip to Japan (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.880625Z", + "index": 2017042101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 441, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/18/441-andy-johnson-at-the-iatefl-conference/", + "post_title": "441. Andy Johnson at the IATEFL Conference", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.873626Z", + "index": 2017041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 440, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/06/440-this-pile-of-books-on-my-desk/", + "post_title": "440. This Pile of Books on my Desk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.866623Z", + "index": 2017040602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 439, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/06/439-reading-books-to-learn-english/", + "post_title": "439. Reading Books to Learn English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.857633Z", + "index": 2017040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 438, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/04/438-hi-luke-i-have-a-question/", + "post_title": "438. Hi Luke, I have a question!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.850628Z", + "index": 2017040401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 437, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/31/437-ramble-news-31-march-2017/", + "post_title": "437. Ramble News \u2013 31 March 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.841630Z", + "index": 2017033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 436, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/28/436-the-return-of-the-lying-game-with-amber-paul-video/", + "post_title": "436. The Return of The Lying Game (with Amber & Paul) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.834634Z", + "index": 2017032801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/26/i-was-interviewed-on-my-fluent-podcast-with-daniel-goodson/", + "post_title": "I was interviewed on \u201cMy Fluent Podcast\u201d by Daniel Goodson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.826640Z", + "index": 2017032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 435, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/24/435-catching-up-with-amber-paul-5-video/", + "post_title": "435. Catching Up With Amber & Paul #5 [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.818638Z", + "index": 2017032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 434, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/21/434-interview-with-paul-taylor-wtf-france-video/", + "post_title": "434. Interview with Paul Taylor \u2013 \u201cWTF France?\u201d [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.810647Z", + "index": 2017032101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 433, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/16/433-british-tv-gordon-ramsays-kitchen-nightmares-part-2-video/", + "post_title": "433. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 2) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.803648Z", + "index": 2017031601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 432, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/14/432-british-tv-gordon-ramsays-kitchen-nightmares-part-1-video/", + "post_title": "432. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 1) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.795650Z", + "index": 2017031401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 431, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/09/431-restaurants-hotels-really-strange-tripadvisor-reviews-with-amber/", + "post_title": "431. Restaurants & Hotels / Really Strange TripAdvisor Reviews (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.720675Z", + "index": 2017030901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 430, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/05/430-discussing-language-learning-life-with-fred-eyangoh/", + "post_title": "430. Discussing Language Learning & Life with Fred Eyangoh", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.712677Z", + "index": 2017030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 429, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/01/429-ramblenews/", + "post_title": "429. RAMBLENEWS!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.705680Z", + "index": 2017030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 428, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/23/428-british-comedy-limmys-show-part-2/", + "post_title": "428. British Comedy: Limmy\u2019s Show (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.697678Z", + "index": 2017022301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 427, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/22/427-british-comedy-limmys-show/", + "post_title": "427. British Comedy: Limmy\u2019s Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.690680Z", + "index": 2017022201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 426, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/16/426-thompson-taylor-minogue-victorian-detectives-part-2-with-amber-paul/", + "post_title": "426. Thompson, Taylor & Minogue: Victorian Detectives (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.683683Z", + "index": 2017021601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 425, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/13/425/", + "post_title": "425. Thompson, Taylor & Minogue: Victorian Detectives (Part 1) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.675690Z", + "index": 2017021301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 424, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/08/424-with-andy-ben-from-the-london-school-of-english-part-2/", + "post_title": "424. With Andy & Ben from The London School of English (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.667693Z", + "index": 2017020801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 423, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/06/423-teacher-talking-time-with-andy-ben-from-the-london-school-of-english-part-1/", + "post_title": "423. With Andy & Ben from The London School of English (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.660690Z", + "index": 2017020601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 422, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/02/422-learning-british-dialects-with-korean-billy/", + "post_title": "422. Learning British Dialects with Korean Billy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.652698Z", + "index": 2017020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 421, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/29/421-skateboarding-a-new-olympic-sport-with-james/", + "post_title": "421. Skateboarding \u2013 A New Olympic Sport (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.645701Z", + "index": 2017012901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 420, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/26/420-anyone-fancy-a-brew-lets-have-a-nice-cup-of-tea/", + "post_title": "420. Anyone fancy a brew? Let\u2019s have a nice cup of tea!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.637704Z", + "index": 2017012601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 419, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/23/419-rogue-one-a-star-wars-story-spoiler-ramble-with-james/", + "post_title": "419. Rogue One: A Star Wars Story \u2013 SPOILER RAMBLE with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.630705Z", + "index": 2017012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 418, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/19/418-the-rick-thompson-report-technology-and-the-future-january-2017/", + "post_title": "418. The Rick Thompson Report: Technology and The Future (January 2017)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.623707Z", + "index": 2017011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 417, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/15/417-new-years-resolutions-and-language-learning-in-2017/", + "post_title": "417. New Year\u2019s Resolutions and Language Learning in 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.614710Z", + "index": 2017011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 416, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/13/416-what-was-the-most-popular-episode-of-lep-in-2016-more-podcast-statistics/", + "post_title": "416. What was the most popular episode of LEP in 2016? + more podcast statistics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.607712Z", + "index": 2017011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 415, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/10/415-with-the-family-part-3-more-encounters-with-famous-people/", + "post_title": "415. With the Family (Part 3) More Encounters with Famous People", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.599716Z", + "index": 2017011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 414, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/05/414-with-the-family-part-2-my-uncle-met-a-rock-star/", + "post_title": "414. With the Family (Part 2) My Uncle Met a Rock Star", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.591717Z", + "index": 2017010501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 413, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/03/413-with-the-family-part-1-mums-cooking-vocabulary-with-uncle-nic/", + "post_title": "413. With The Family (Part 1) Mum\u2019s Cooking + Vocabulary (with Uncle Nic)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.584715Z", + "index": 2017010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 412, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/26/412-british-festivals-and-holidays-part-2/", + "post_title": "412. British Festivals and Holidays (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.576717Z", + "index": 2016122602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 411, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/26/411-british-festivals-and-holidays-part-1/", + "post_title": "411. British Festivals and Holidays (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.569720Z", + "index": 2016122601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/22/a-quick-message-about-donations-please-consider-donating-to-doctors-without-borders-to-help-people-in-need/", + "post_title": "A Quick Message About Donations \u2013 Please consider donating to \u201cDoctors Without Borders\u201d to help people in need", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.561722Z", + "index": 2016122201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 410, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/20/410-teaching-12-idioms-in-the-street-on-the-set-of-pauls-tv-show-with-amber/", + "post_title": "410. Teaching 12 Idioms in the Street / On the Set of Paul\u2019s TV Show (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.553725Z", + "index": 2016122001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 409, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/16/409-a-christmas-mega-ramble-with-amber-minogue/", + "post_title": "409. A CHRISTMAS MEGA-RAMBLE with AMBER MINOGUE", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.545728Z", + "index": 2016121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 408, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/13/408-catching-up-with-amber-paul-4-videos/", + "post_title": "408. Catching Up With Amber & Paul #4 (+ videos)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.537730Z", + "index": 2016121301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 407, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/07/407-reflections-on-language-learning-working-as-a-translator-interview-with-kristina-from-russia-winner-of-the-lep-anecdote-competition-2016/", + "post_title": "407. Reflections on Language Learning & Working as a Translator: Interview with Kristina from Russia, Winner of the LEP Anecdote Competition 2016", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.528734Z", + "index": 2016120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 406, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/04/406-grammar-past-continuous-tense-uk-media-bias-brazil-football-tragedy/", + "post_title": "406. Grammar (Past Continuous Tense) / UK Media Bias / Brazil Football Tragedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.520736Z", + "index": 2016120401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 405, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/30/405-british-accents-in-the-lord-of-the-rings-part-2/", + "post_title": "405. British Accents in The Lord of the Rings (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.513743Z", + "index": 2016113002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 404, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/30/404-british-accents-in-the-lord-of-the-rings-part-1/", + "post_title": "404. British Accents in The Lord of the Rings (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.506741Z", + "index": 2016113001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 403, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/29/403-competition-results-war-story-grammar-my-dads-accent/", + "post_title": "403. Competition Results / War Story / Grammar & Punctuation / My Dad\u2019s Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.498744Z", + "index": 2016112901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 402, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/23/402-the-rick-thompson-report-whats-going-on-nov-2016-post-truth-politics-cricket-and-tetris/", + "post_title": "402. The Rick Thompson Report: What\u2019s Going On? Nov. 2016 (Post-Truth Politics, Cricket and Tetris)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.490751Z", + "index": 2016112301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 401, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/21/401-switch-off-your-editor-to-improve-your-fluency-in-english/", + "post_title": "401. \u2018Switch off your editor\u2019 to improve your fluency in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.483748Z", + "index": 2016112101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 400, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/18/400-the-pink-gorilla-story-2/", + "post_title": "400. The Pink Gorilla Story 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.475750Z", + "index": 2016111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 399, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/15/399-the-return-of-molly-martinez-with-dane-nightingale/", + "post_title": "399. The Return of Molly Martinez (with Dane Nightingale)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.468754Z", + "index": 2016111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 398, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/09/398-us-election-result-ramble-message-song/", + "post_title": "398. US Election Result Ramble + Message + Song", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.460755Z", + "index": 2016110901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 397, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/07/397-an-80-minute-ramble/", + "post_title": "397. An 80-Minute Ramble", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.453757Z", + "index": 2016110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 396, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/28/396-the-lep-anecdote-competition-round-2/", + "post_title": "396. The LEP Anecdote Competition \u2013 ROUND 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.445760Z", + "index": 2016102801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 395, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/27/395-have-you-ever-with-paul-taylor-and-robert-hoehn/", + "post_title": "395. \u201cHave you ever\u2026?\u201d with Paul Taylor and Robert Hoehn", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.438762Z", + "index": 2016102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 394, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/23/394-opp-other-peoples-podcasts-part-4/", + "post_title": "394. OPP: Other People\u2019s Podcasts (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.430765Z", + "index": 2016102301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 393, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/22/393-opp-other-peoples-podcasts-part-3/", + "post_title": "393. OPP: Other People\u2019s Podcasts (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.423767Z", + "index": 2016102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 392, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/19/392-what-are-the-most-essential-skills-of-a-good-foreign-language-learner/", + "post_title": "392. What are the most essential skills of a good foreign language learner?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.415772Z", + "index": 2016101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 391, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/17/391-discussing-language-culture-comedy-with-alexander-van-walsum/", + "post_title": "391. Discussing Language, Culture & Comedy with Alexander van Walsum", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.407773Z", + "index": 2016101701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 390, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/14/390-the-rick-thompson-report-hard-brexit-u-s-election/", + "post_title": "390. The Rick Thompson Report: Hard Brexit / U.S. Election", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.399776Z", + "index": 2016101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 389, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/11/389-us-presidential-election-2016-trump-vs-clinton-with-sarah-sebastian-part-2/", + "post_title": "389. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.391778Z", + "index": 2016101102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 388, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/11/388-us-presidential-election-2016-trump-vs-clinton-with-sarah-and-sebastian/", + "post_title": "388. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.384780Z", + "index": 2016101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 387, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/07/387-lep-anecdote-competition-entries-please-listen-vote/", + "post_title": "387. LEP Anecdote Competition Entries \u2013 Please listen & vote", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.376783Z", + "index": 2016100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 386, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/05/386-breaking-the-intermediate-plateau-part-2/", + "post_title": "386. Breaking the Intermediate Plateau (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.369786Z", + "index": 2016100502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 385, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/05/385-breaking-the-intermediate-plateau-part-1/", + "post_title": "385. Breaking the Intermediate Plateau (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.361788Z", + "index": 2016100501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 384, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/30/384-teaching-grammar-social-english/", + "post_title": "384. Teaching Grammar & Social English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.354790Z", + "index": 2016093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 383, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/27/383-more-ian-moore/", + "post_title": "383. More Ian Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.345793Z", + "index": 2016092701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/23/please-take-my-survey-anecdote-competition-russian-joke-video/", + "post_title": "Please take my survey / Anecdote Competition / \u2018Russian Joke\u2019 Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.337795Z", + "index": 2016092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 382, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/21/382-mod-culture-with-ian-moore/", + "post_title": "382. Mod Culture with Ian Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.329798Z", + "index": 2016092101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 381, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/17/381-discussing-cultural-differences-with-amber-paul/", + "post_title": "381. Discussing Cultural Differences with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.322801Z", + "index": 2016091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 380, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/12/380-catching-up-with-amber-and-paul-3/", + "post_title": "380. Catching Up with Amber and Paul #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.314803Z", + "index": 2016091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 379, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/07/379-the-lep-anecdote-competition/", + "post_title": "379. The LEP Anecdote Competition", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.307806Z", + "index": 2016090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 378, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/05/378-holiday-in-thailand-part-2/", + "post_title": "378. Holiday in Thailand (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.299809Z", + "index": 2016090501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 377, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/03/377-holiday-in-thailand/", + "post_title": "377. Holiday in Thailand (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.292811Z", + "index": 2016090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/im-going-on-holiday-no-podcasts-for-a-while/", + "post_title": "I\u2019m going on holiday \u2013 no podcasts for a while", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.284814Z", + "index": 2016081204, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 376, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/376-a-game-of-mini-golf-and-a-pint-with-james/", + "post_title": "376. A Game of Mini Golf and a Pint (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.276816Z", + "index": 2016081203, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 375, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/375-the-lep-pub-quiz-with-alex-love/", + "post_title": "375. The LEP Pub Quiz (with Alex Love)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.269823Z", + "index": 2016081202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 374, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/374-alexs-edinburgh-report/", + "post_title": "374. Alex\u2019s Edinburgh Fringe Report", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.261826Z", + "index": 2016081201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 373, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/10/373-who-wants-to-be-good-at-english/", + "post_title": "373. Who Wants to Be Good at English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.254828Z", + "index": 2016081001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 372, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/09/372-the-importance-of-anecdotes-in-english-narrative-tenses-four-anecdotes", + "post_title": "372. The Importance of Anecdotes in English / Narrative Tenses / Four Anecdotes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.246831Z", + "index": 2016080901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 371, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/07/371-in-conversation-with-rob-ager-from-liverpool-part-2-film-analysis-hidden-meanings-stanley-kubrick-conspiracy-theory/", + "post_title": "371. In Conversation with Rob Ager from Liverpool (PART 2: Film Analysis / Hidden Meanings / Stanley Kubrick / Conspiracy Theory)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.238828Z", + "index": 2016080702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 369, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/03/389-pokemon-go-its-just-a-game-or-is-it/", + "post_title": "369. Pok\u00e9mon GO \u2013 It\u2019s just a game, OR IS IT?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.158855Z", + "index": 2016080301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 368, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/02/368-the-lep-annual-general-meeting-2016-questions/", + "post_title": "368. The LEP Annual General Meeting 2016 / QUESTIONS", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.150862Z", + "index": 2016080201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 367, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/31/367-talking-about-nothing-with-alex-love-invaded-by-robot-aliens-part-2/", + "post_title": "367. Talking about Nothing with Alex Love (Invaded by Robot Aliens) PART 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.142860Z", + "index": 2016073102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 366, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/31/366-talking-about-nothing-with-alex-love-invaded-by-robot-aliens/", + "post_title": "366. Talking about Nothing with Alex Love (Invaded by Robot Aliens)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.135862Z", + "index": 2016073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/27/quick-hello-notting-hill-carnival-audio/", + "post_title": "Quick Hello / Notting Hill Carnival Audio", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.127869Z", + "index": 2016072701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 365, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/17/365-brexit-3-weeks-later-a-conversation-with-my-dad/", + "post_title": "365. BREXIT: 3 Weeks Later (A conversation with my Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.120872Z", + "index": 2016071701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 364, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/15/364-ten-top-tips-for-learning-english/", + "post_title": "364. TEN TOP TIPS for Learning English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.112874Z", + "index": 2016071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 363, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/03/363-muhammad-ali-the-rumble-in-the-jungle/", + "post_title": "363. Muhammad Ali & The Rumble in the Jungle", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.105877Z", + "index": 2016070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 362, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/28/362-getting-things-off-my-chest-part-2/", + "post_title": "362. Getting things off my chest! (Part 2) Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.097875Z", + "index": 2016062802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 361, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/28/361-getting-things-off-my-chest-part-1/", + "post_title": "361. Getting things off my chest! (Part 1) Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.089877Z", + "index": 2016062801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 360, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/24/360-the-day-after-brexit-thoughts-and-feelings/", + "post_title": "360. THE DAY AFTER BREXIT (Thoughts and feelings)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.081880Z", + "index": 2016062402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 359, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/24/359-brexit-jokes-eu-referendum-night/", + "post_title": "359. BREXIT JOKES / EU REFERENDUM NIGHT", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.073648Z", + "index": 2016062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 358, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/23/358-fete-de-la-musique-world-music-festival-in-paris/", + "post_title": "358. F\u00eate de la Musique / World Music Festival in Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.066652Z", + "index": 2016062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 357, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/19/357-olly-richards/", + "post_title": "357. Learning Languages with Olly Richards", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.059090Z", + "index": 2016061901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 356, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/17/356-lep-meeting-football-brexit-events-in-the-uk-jo-cox/", + "post_title": "356. News / Football / Brexit / Events in the UK / Jo Cox", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.052096Z", + "index": 2016061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 355, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/13/355-euro-2016-football-hooliganism-violence-in-marseille-england-vs-russia/", + "post_title": "355. EURO 2016 Football: Hooliganism & Violence in Marseille / England vs Russia", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.043099Z", + "index": 2016061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 354, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/10/354-would-you-rather-with-amber-paul-james-simpson/", + "post_title": "354. Would You Rather\u2026? (with Amber, Paul & James Simpson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.036101Z", + "index": 2016061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 353, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/07/353-award-ceremony-paris-weather-crazy-idea/", + "post_title": "353. Award Ceremony / Paris Weather / Crazy Idea", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.028103Z", + "index": 2016060702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 352, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/07/352-brexit-key-vocabulary-and-concepts/", + "post_title": "352. BREXIT: Key Vocabulary and Concepts", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.021106Z", + "index": 2016060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 351, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/29/351-brexit-should-the-uk-leave-the-eu-a-conversation-with-my-dad/?w3tc_note=flush_all", + "post_title": "351. BREXIT: Should the UK leave the EU? (A Conversation with my Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.013104Z", + "index": 2016052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 350, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/26/350-x-men-apocalypse-film-review/", + "post_title": "350. Film Club: X-Men Apocalypse (Review)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.005106Z", + "index": 2016052601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 349, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/24/349-whos-the-best-superhero-with-paul-langton/", + "post_title": "349. Who\u2019s the best superhero? (with Paul Langton)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.997114Z", + "index": 2016052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 348, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/19/348-marvel-superhero-movies-captain-america-civil-war-part-2/", + "post_title": "348. Film Club: Marvel / Captain America Civil War (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.990117Z", + "index": 2016051902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 347, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/19/347-marvel-superhero-movies-captain-america-civil-war-part-1/", + "post_title": "347. Film Club: Marvel / Captain America Civil War (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.983115Z", + "index": 2016051901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 346, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/13/346-rambling-on-a-friday-afternoon/", + "post_title": "346. Rambling on a Friday Afternoon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.975121Z", + "index": 2016051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 345, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/11/345-elton-award-nomination-phrasal-verbs-idioms-brooklyn-the-revenant-museum-of-natural-history-more/", + "post_title": "345. ELTon Award Nomination / Phrasal Verbs & Idioms / Brooklyn / The Revenant / Museum of Natural History & More", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.968119Z", + "index": 2016051101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 344, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/22/344-a-totally-terrific-talk-on-the-terrace-with-the-tangential-trio-feat-tom-morton/", + "post_title": "344. A Totally Terrific Talk on the Terrace with The Tangential Trio (feat. Tom Morton) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.960125Z", + "index": 2016042201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 343, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/20/the-interactive-lying-game/", + "post_title": "343. The Interactive Lying Game (with Amber & Paul) / Descriptive Adjectives with T / Three is a Magic Number", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.953128Z", + "index": 2016042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 342, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/18/342-pauls-la-bise-video-success-audition-story-with-amber-paul/", + "post_title": "342. Paul\u2019s \u201cLa Bise\u201d Video Success / Audition Story (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.945125Z", + "index": 2016041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 341, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/15/341-catching-up-with-amber-paul-again/", + "post_title": "341. Catching Up With Amber & Paul, Again", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.938128Z", + "index": 2016041501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 340, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/07/340-lep-photo-competition-results-winners-its-leps-7th-birthday/", + "post_title": "340. LEP Photo Competition Results & Winners / It\u2019s LEP\u2019s 7th Birthday", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.929131Z", + "index": 2016040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 339, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/03/339-a-murder-mystery-detective-story-part-2/", + "post_title": "339. A Murder Mystery Detective Story (Part 2 of 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.922133Z", + "index": 2016040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 338, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/31/338-a-murder-mystery-detective-story/", + "post_title": "338. A Murder Mystery Detective Story (Part 1 of 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.914136Z", + "index": 2016033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/24/i-was-interviewed-by-olly-richards-on-his-podcast-called-i-will-teach-you-a-language-and-we-talked-about-language-learning/", + "post_title": "I was interviewed by Olly Richards on his podcast, called \u201cI Will Teach You a Language\u201d and we talked about language learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.907138Z", + "index": 2016032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 337, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/23/337-murder-mile-walks-stories-of-londons-most-infamous-shocking-murders-some-explicit-content-swearing/", + "post_title": "337. MURDER MILE WALKS: Stories of London\u2019s Most Infamous & Shocking Murders [Some Explicit Content + Swearing]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.899142Z", + "index": 2016032301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/", + "post_title": "I was invited onto Craig Wealand\u2019s weekly Blab, and we talked about comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.892143Z", + "index": 2016032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 336, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/16/336-drinking-scottish-whisky-at-a-german-business-meeting-while-wearing-a-kilt-and-playing-a-flute-and-other-stories-with-carrick-cameron/", + "post_title": "336. Drinking Scottish Whisky at a German Business Meeting While Wearing a Kilt and Playing a Flute\u2026 and other stories (with Carrick Cameron)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.884146Z", + "index": 2016031601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 335, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/13/335-vocabulary-review-phrases-expressions-from-episode-334/", + "post_title": "335. VOCABULARY REVIEW: Phrases & Expressions from Episode 334.", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.876148Z", + "index": 2016031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 334, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/09/334-interview-with-craig-wealand-from-inglespodcast/", + "post_title": "334. Interview with Craig Wealand (from InglesPodcast)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.869151Z", + "index": 2016030901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/04/my-interview-with-school-kids-from-ies-school-in-san-fernando-spain/", + "post_title": "My interview with school kids from IES School in San Fernando, Spain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.860154Z", + "index": 2016030401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 333, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/01/333-more-misheard-lyrics-\u266c/", + "post_title": "333. More Misheard Lyrics \u266c", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.853156Z", + "index": 2016030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 332, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/26/332-olly-richards-english-polyglot-top-advice-and-strategies-for-language-learning/", + "post_title": "332. Olly Richards: English Polyglot \u2013 Top Advice and Strategies for Language Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.844159Z", + "index": 2016022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 331, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/22/331-hows-your-english-and-why-speaking-is-so-important/", + "post_title": "331. How\u2019s your English? (and why speaking is so important)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.837161Z", + "index": 2016022201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 330, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/17/330-lets-play-grand-theft-auto-5-and-learn-some-english-while-doing-it/", + "post_title": "330. Let\u2019s Play\u2026 Grand Theft Auto 5 (and learn some English while doing it)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.829168Z", + "index": 2016021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 329, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/14/329-a-rambling-chat-with-james-news-stories-jokes/", + "post_title": "329. A Rambling Chat with James (News, Stories, Jokes)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.822171Z", + "index": 2016021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 328, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/03/328-cooking-with-luke-verbs-and-expressions-in-the-kitchen/", + "post_title": "328. Cooking with Luke \u2013 Verbs and Expressions in the Kitchen", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.814169Z", + "index": 2016020301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 327, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/20/327-the-lep-photo-competition-please-check-out-the-photos-and-vote/", + "post_title": "327. The LEP Photo Competition \u2013 Please check out the photos and vote", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.807171Z", + "index": 2016012002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 326, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/20/326-catching-up-with-oli-future-predictions/", + "post_title": "326. Catching up with Oli / Future Predictions (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.800174Z", + "index": 2016012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 325, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/18/325-catching-up-with-oli-future-predictions/", + "post_title": "325. Catching Up with Oli / Future Predictions (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.792181Z", + "index": 2016011801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 324, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/14/324-david-bowie-part-2/", + "post_title": "324. David Bowie (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.785183Z", + "index": 2016011402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 323, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/14/323-david-bowie-part-1/", + "post_title": "323. David Bowie (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.777186Z", + "index": 2016011401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 322, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/07/322-with-the-thompsons/", + "post_title": "322. With The Thompsons", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.770188Z", + "index": 2016010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 321, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/04/321-star-wars-episode-vii-the-force-awakens-spoiler-review/", + "post_title": "321. Star Wars Episode VII: The Force Awakens \u2013 SPOILER REVIEW", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.762190Z", + "index": 2016010401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 320, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/23/320-a-christmas-carol-by-charles-dickens/", + "post_title": "320. A Christmas Carol by Charles Dickens", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.755193Z", + "index": 2015122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 319, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/16/319-star-wars-vii-the-force-awakens-reaction-no-spoilers/", + "post_title": "319. Star Wars VII: The Force Awakens \u2013 Reaction (No spoilers!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.746191Z", + "index": 2015121602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 318, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/16/318-the-rematch-part-2/", + "post_title": "318. The Rematch (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.739193Z", + "index": 2015121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 317, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/11/the-rematch/", + "post_title": "317. The Rematch (Part 1) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.731196Z", + "index": 2015121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 316, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/07/316-british-comedy-tim-vine-part-2/", + "post_title": "316. British Comedy: Tim Vine (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.724198Z", + "index": 2015120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 315, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/03/315-do-me-a-favour-take-my-business-english-survey/", + "post_title": "315. Do me a favour \u2013 Take my Business English Survey!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.716202Z", + "index": 2015120301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 314, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/01/lukes-guided-sleep-meditation/", + "post_title": "314. Luke\u2019s Guided Sleep Meditation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.709203Z", + "index": 2015120101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 313, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/27/313-british-comedy-tim-vine/", + "post_title": "313. British Comedy: Tim Vine", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.701206Z", + "index": 2015112701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 312, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/25/312-the-words-of-the-year-part-3/", + "post_title": "312. The Words of the Year (Part 3) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.694208Z", + "index": 2015112501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 311, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/18/311-the-words-of-the-year-2015-part-2/", + "post_title": "311. The Words of the Year (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.687211Z", + "index": 2015111802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 310, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/18/310-the-words-of-the-year-part-1/", + "post_title": "310. The Words of the Year (Part 1) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.679213Z", + "index": 2015111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/16/attacks-in-paris-13-november-2015-eyewitness-report/", + "post_title": "Attacks in Paris (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.672215Z", + "index": 2015111601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 309, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/11/309-the-lying-game-part-2/", + "post_title": "309. The Lying Game (Part 2) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.664218Z", + "index": 2015111101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 308, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/07/308-the-lying-game-part-1/", + "post_title": "308. The Lying Game (Part 1) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.657220Z", + "index": 2015110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 307, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/04/307-the-mystery-of-corporate-jargon-management-speak-part-2/", + "post_title": "307. The Mystery of Corporate Jargon & Management Speak (Part 2) with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.650223Z", + "index": 2015110401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 306, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/28/306-corporate-jargon-management-speak-part-1/", + "post_title": "306. The Mystery of Corporate Jargon & Management Speak (Part 1) with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.642225Z", + "index": 2015102801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 303, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/19/303-the-battle-of-britain/", + "post_title": "303. The Battle of Britain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.469287Z", + "index": 2015101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 302, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/14/302-bad-dentist-star-wars-adam-buxton-headphone-jams-jarvis-cocker/", + "post_title": "302. Bad Dentist / Star Wars / Adam Buxton / Headphone Jams / Jarvis Cocker", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.461290Z", + "index": 2015101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 301, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/11/301-david-cameron-the-pig-bad-gig-story-who-is-ronnie-pickering/", + "post_title": "301. David Cameron & The Pig / Bad Gig Story / Who is Ronnie Pickering?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.454291Z", + "index": 2015101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 300, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-2/", + "post_title": "300. EPISODE 300 (PART 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.446289Z", + "index": 2015100702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 300, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-1/", + "post_title": "300. EPISODE 300 (PART 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.438846Z", + "index": 2015100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 299, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/30/299-the-bank-robbery-part-2/", + "post_title": "299. The Bank Robbery (Part 2) (with Amber, Paul and Sebastian)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.431844Z", + "index": 2015093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 298, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/24/298-the-bank-robbery-part-1/", + "post_title": "298. The Bank Robbery (Part 1) (with Amber, Paul & Sebastian)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.423846Z", + "index": 2015092401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 297, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/18/using-humour-in-the-ielts-speaking-test-with-jessica-from-all-ears-english/", + "post_title": "297. Using Humour in the IELTS Speaking Test (With Jessica from All Ears English)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.416859Z", + "index": 2015091801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 296, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/11/296-learning-comedy-is-like-learning-a-language/", + "post_title": "296. Learning Comedy is like Learning a Language (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.408855Z", + "index": 2015091101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 295, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/07/295-california-road-trip-final-part/", + "post_title": "295. California Road Trip (Final Part)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.400859Z", + "index": 2015090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 294, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/02/294-california-road-trip-part-7/", + "post_title": "294. California Road Trip (Part 7)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.392861Z", + "index": 2015090201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 293, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/01/293-california-road-trip-part-6/", + "post_title": "293. California Road Trip (Part 6)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.384865Z", + "index": 2015090101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 292, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/31/292-california-road-trip-part-5/", + "post_title": "292. California Road Trip (Part 5)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.377866Z", + "index": 2015083101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 291, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/28/291-california-road-trip-part-4/", + "post_title": "291. California Road Trip (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.370868Z", + "index": 2015082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 290, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/27/290-california-road-trip-part-3/", + "post_title": "290. California Road Trip (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.362866Z", + "index": 2015082701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 289, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/26/289-california-road-trip-part-2/", + "post_title": "289. California Road Trip (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.355868Z", + "index": 2015082602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 288, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/26/288-california-road-trip-part-1/", + "post_title": "288. California Road Trip (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.346871Z", + "index": 2015082601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 287, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/04/287-vocab-battle-with-amber-paul-exciting-title/", + "post_title": "287. VOCAB BATTLE!!! WITH AMBER & PAUL (exciting title)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.338874Z", + "index": 2015080402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 286, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/04/286-the-wedding-episode/", + "post_title": "286. The Wedding Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.330881Z", + "index": 2015080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 285, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/03/285/", + "post_title": "285. Ten More Fixed Expressions (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.323884Z", + "index": 2015080301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/22/an-experimental-live-video-podcast-on-periscope/", + "post_title": "An Experimental Live Video Podcast on Periscope", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.315883Z", + "index": 2015072201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 284, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/08/284-questions-from-tea4er-ru-part-2/", + "post_title": "284. Questions from Tea4er.ru (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.308884Z", + "index": 2015070801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 283, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/02/283-ten-fixed-expressions/", + "post_title": "283. Ten Fixed Expressions (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.300887Z", + "index": 2015070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 282, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/29/282-questions-from-tea4er-ru/", + "post_title": "282. Questions from Tea4er.ru", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.292894Z", + "index": 2015062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 281, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/17/281-misheard-lyrics/", + "post_title": "281. Misheard Lyrics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.285896Z", + "index": 2015061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 280, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/14/280-uk-superstitions/", + "post_title": "280. The UK\u2019s Favourite Superstitions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.277899Z", + "index": 2015061401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 279, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/10/279-marcus-keeley-northern-ireland-accent-part-3/", + "post_title": "279. Marcus Keeley / Northern Ireland / Accent (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.270903Z", + "index": 2015061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 278, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/09/278-marcus-keeley-northern-ireland-part-2/", + "post_title": "278. Marcus Keeley / Northern Ireland (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.262899Z", + "index": 2015060902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 277, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/09/277-a-chat-with-marcus-keeley-from-northern-ireland/", + "post_title": "277. A Chat with Marcus Keeley from Northern Ireland (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.255901Z", + "index": 2015060901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/03/survey-what-kind-of-episodes-of-lep-do-you-prefer/", + "post_title": "Survey: What kind of episodes of LEP do you prefer?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.248904Z", + "index": 2015060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 276, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/02/276-qa-session-5/", + "post_title": "276. Q&A Session #5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.240912Z", + "index": 2015060201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 275, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/29/275-the-phrasal-verb-chronicles-2/", + "post_title": "275. The Phrasal Verb Chronicles #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.233914Z", + "index": 2015052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 274, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/26/274-qa-session-4/", + "post_title": "274. Q&A Session #4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.225916Z", + "index": 2015052601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 273, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/24/273-the-bad-haircut-situation-part-2-more-role-plays-improvisations/", + "post_title": "273. The Bad Haircut Situation Part 2: More Role Plays & Improvisations (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.217918Z", + "index": 2015052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 272, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/21/272-the-bad-haircut-situation/", + "post_title": "272. The Bad Haircut Situation (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.209921Z", + "index": 2015052101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 271, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/17/catching-up-with-amber-and-paul/", + "post_title": "271. Catching Up with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.202919Z", + "index": 2015051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 270, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/15/270-uk-general-election-results/", + "post_title": "270. UK General Election RESULTS", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.194927Z", + "index": 2015051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 269, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/05/269-uk-general-election-2015-part-2/", + "post_title": "269. UK General Election 2015 (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.187928Z", + "index": 2015050501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 268, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/03/268-uk-general-election-2015-part-1/", + "post_title": "268. UK General Election 2015 (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.179931Z", + "index": 2015050301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 267, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/02/267-earthquake-in-nepal-other-news/", + "post_title": "267. Earthquake in Nepal + other news", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.172936Z", + "index": 2015050201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/01/lukes-tv-appearance-on-france-24-tv/", + "post_title": "Luke\u2019s TV Appearance on France24", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.164938Z", + "index": 2015050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 266, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/24/266-telling-jokes-in-english-part-3/", + "post_title": "266. Telling Jokes in English (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.157938Z", + "index": 2015042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 265, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/23/265-telling-jokes-in-english-part-2/", + "post_title": "265. Telling Jokes in English (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.149937Z", + "index": 2015042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 264, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/20/jokes1/", + "post_title": "264. Telling Jokes in English (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.141944Z", + "index": 2015042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 263, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/08/263-past-present-future/", + "post_title": "263. Past, Present & Future", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.134946Z", + "index": 2015040801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/31/lukes-interview-on-inglespodcast/", + "post_title": "Luke\u2019s Interview on InglesPodcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.126948Z", + "index": 2015033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/17/a-message-from-luke/", + "post_title": "A Message from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.119953Z", + "index": 2015031701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 262, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/03/262-what-is-britishness-part-2/", + "post_title": "262. What is Britishness? (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.111953Z", + "index": 2015030302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 261, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/03/261-what-is-britishness-part-1/", + "post_title": "261. What is Britishness? (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.104955Z", + "index": 2015030301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 260, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/26/kingsman/", + "post_title": "260. Kingsman: The Secret Service", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.096958Z", + "index": 2015022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 259, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/24/259-eulogy-for-dennis/", + "post_title": "259. Eulogy for Dennis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.089961Z", + "index": 2015022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 258, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/17/258-award-win-thank-you-poem/", + "post_title": "258. Award Win / Thank You / Poem", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.081959Z", + "index": 2015021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 257, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/10/257-be-positive/", + "post_title": "257. Be Positive", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.073966Z", + "index": 2015021001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 256, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/01/reading-books-in-english/", + "post_title": "256. Reading Books in English (and listening to them too)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.066964Z", + "index": 2015020101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 255, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/26/255-taken-3-expressions-with-take/", + "post_title": "255. Taken 3 / Expressions with \u2018Take\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.058971Z", + "index": 2015012601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 254, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/22/254-ielts-tips-tricks/", + "post_title": "254. IELTS Tips & Tricks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.051973Z", + "index": 2015012201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 253, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/20/fluency-mc/", + "post_title": "253. Rapping with Fluency MC!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.043975Z", + "index": 2015012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 252, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/16/marooned-with-my-music-james-thompson/", + "post_title": "252. Marooned With My Music: James Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.036978Z", + "index": 2015011601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 251, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/13/251-welcome-to-lep-16-things-you-should-know-about-lep/", + "post_title": "251. Welcome to LEP / 16 Things You Should Know about LEP", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.027981Z", + "index": 2015011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 250, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/11/250-marooned-with-my-music-gill-thompson/", + "post_title": "250. Marooned With My Music: Gill Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.020983Z", + "index": 2015011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 249, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/08/249-news-lep-merchandise-messages/", + "post_title": "249. News / LEP Merchandise / Messages", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.012986Z", + "index": 2015010801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 248, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/06/248-marooned-with-my-music-rick-thompson/", + "post_title": "248. Marooned With My Music: Rick Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.005988Z", + "index": 2015010601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 247, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/03/247-understanding-america/", + "post_title": "247. Understanding The USA", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.997991Z", + "index": 2015010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 246, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/24/246-flight-stories/", + "post_title": "246. Flight Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.990988Z", + "index": 2014122402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/24/video-one-of-lukes-stand-up-comedy-gigs/", + "post_title": "*Video \u2013 One of Luke\u2019s Stand-up Comedy Gigs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.983991Z", + "index": 2014122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 245, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/23/245-merry-christmas-other-news/", + "post_title": "245. Merry Christmas! (+more) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.975998Z", + "index": 2014122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 244, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/15/244-urban-myths/", + "post_title": "244. Urban Myths", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.969000Z", + "index": 2014121501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 243, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/11/243-a-life-changing-teaching-experience-in-ghana/", + "post_title": "243. A Life-Changing Teaching Experience in Ghana", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.961002Z", + "index": 2014121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 242, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/07/242-11-idioms-only-brits-understand-really/", + "post_title": "242. 11 Idioms Only Brits Understand (really?)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.954005Z", + "index": 2014120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 241, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/02/241-star-wars/", + "post_title": "241. Star Wars", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.946008Z", + "index": 2014120202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 240, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/02/240-politicians-avoiding-questions/", + "post_title": "240. Politicians Avoiding Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.939011Z", + "index": 2014120201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 239, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/26/239-prepositions-verb-collocations/", + "post_title": "239. Prepositions: Verb Collocations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.931013Z", + "index": 2014112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 238, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/24/238-prepositions-failed-attempt/", + "post_title": "238. Prepositions (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.924015Z", + "index": 2014112401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 237, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/18/237-opp-other-peoples-podcasts-part-2/", + "post_title": "237. OPP: Other People\u2019s Podcasts (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.916014Z", + "index": 2014111802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 236, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/18/236-opp-other-peoples-podcasts-part-1/", + "post_title": "236. OPP: Other People\u2019s Podcasts (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.908020Z", + "index": 2014111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/16/my-appearance-on-the-talk2learn-chatcast/", + "post_title": "*My Appearance on the Talk2Learn Chatcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.901022Z", + "index": 2014111601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 235, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/14/british-slang-n-to-z/", + "post_title": "235. British Slang (N to Z)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.893025Z", + "index": 2014111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 234, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/11/234-making-choons-with-jim/", + "post_title": "234. Making \u201cChoons\u201d with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.886027Z", + "index": 2014111101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 233, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/07/233-yep-winner-edgar-hernandez/", + "post_title": "233. YEP! Winner", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.878030Z", + "index": 2014110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 232, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/06/232-yep-runners-up-part-2/", + "post_title": "232. YEP! Runners Up (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.871027Z", + "index": 2014110602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 231, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/06/231-yep-runners-up-part-1/", + "post_title": "231. YEP! Runners Up (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.862030Z", + "index": 2014110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 230, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/04/230-can-you-learn-a-language-in-6-months/", + "post_title": "230. Can You Learn a Language in 6 Months?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.855032Z", + "index": 2014110401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 229, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/30/229-zombies-part-2/", + "post_title": "229. Zombies! (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.846036Z", + "index": 2014103002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 228, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/30/228-zombies/", + "post_title": "228. Zombies! (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.839038Z", + "index": 2014103001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 227, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/27/227-sausages-barcodes-apple-watches/", + "post_title": "227. Sausages, Barcodes & Apple Watches", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.831041Z", + "index": 2014102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/25/my-video-interview-with-gabby-wallace/", + "post_title": "*My Video Interview with Gabby Wallace from \u201cGo Natural English\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.824043Z", + "index": 2014102501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 226, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/21/226-on-a-boat/", + "post_title": "226. On a Boat", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.816046Z", + "index": 2014102101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 225, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/16/film-club-taken/", + "post_title": "225. Film Club: \u201cTaken\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.809048Z", + "index": 2014101601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 224, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/13/pronunciation-verb-tenses-connected-speech/", + "post_title": "224. Pronunciation: Verb Tenses & Connected Speech", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.802051Z", + "index": 2014101301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/10/please-consider-donating-to-lepra-org-uk/", + "post_title": "*Please Consider Donating to Lepra.org.uk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.793053Z", + "index": 2014101001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 223, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/07/223-yep-competition-winners/", + "post_title": "223. YEP! Competition Winners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.786056Z", + "index": 2014100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 222, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/30/222-lukes-late-night-podcast/", + "post_title": "222. Luke\u2019s Late Night Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.778063Z", + "index": 2014093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/26/video-playing-around-with-accents-in-english/", + "post_title": "Video: Playing Around with Accents in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.771065Z", + "index": 2014092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 221, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/23/221-a-cup-of-tea-with-corneliu-dragomirescu-part-2/", + "post_title": "221. A Cup of Tea with Corneliu Dragomirescu (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.763068Z", + "index": 2014092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 220, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/17/220-a-cup-of-tea-with-corneliu-dragomirescu/", + "post_title": "220. A Cup of Tea with Corneliu Dragomirescu", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.756071Z", + "index": 2014091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 219, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/10/scottish-independence/", + "post_title": "219. Scottish Independence", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.748073Z", + "index": 2014091001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 218, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/218-yep-competition-entries-8/", + "post_title": "218. YEP! Competition Entries #8", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.741075Z", + "index": 2014090708, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 217, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/217-yep-competition-entries-7/", + "post_title": "217. YEP! Competition Entries #7", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.733073Z", + "index": 2014090707, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 216, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/216-yep-competition-entries-6/", + "post_title": "216. YEP! Competition Entries #6", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.725075Z", + "index": 2014090706, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 215, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/215-yep-competition-entries-5/", + "post_title": "215. YEP! Competition Entries #5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.718083Z", + "index": 2014090705, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 214, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/214-yep-competition-entries-4/", + "post_title": "214. YEP! Competition Entries #4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.710085Z", + "index": 2014090704, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 213, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/213-yep-competition-entries-3/", + "post_title": "213. YEP! Competition Entries #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.703087Z", + "index": 2014090703, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 212, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/212-yep-competition-entries-2/", + "post_title": "212. YEP! Competition Entries #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.695090Z", + "index": 2014090702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 211, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/211-yep-competition-entries-1/", + "post_title": "211. YEP! Competition Entries #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.688092Z", + "index": 2014090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 210, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/04/210-a-bit-of-a-chat-with-noman-hosni/", + "post_title": "210. A Cup of Tea with Noman Hosni", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.680095Z", + "index": 2014090401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 209, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/29/209-travelling-in-indonesia-part-2/", + "post_title": "209. Travelling in Indonesia (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.673097Z", + "index": 2014082902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 208, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/29/208-travelling-in-indonesia-part-1/", + "post_title": "208. Travelling in Indonesia (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.665095Z", + "index": 2014082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 207, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/08/competition-inspiration/", + "post_title": "207. Competition Inspiration", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.658097Z", + "index": 2014080801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 206, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/06/205-summer-in-london-part-2/", + "post_title": "206. Summer in London (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.650101Z", + "index": 2014080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 205, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/05/205-summer-in-london-part-1/", + "post_title": "205. Summer in London (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.642102Z", + "index": 2014080502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 204, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/05/204-quick-hello-competition-update-more-news/", + "post_title": "204. Quick Hello: Competition Update & More News", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.635106Z", + "index": 2014080501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 203, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/04/203-the-flatmate-from-japan/", + "post_title": "203. The Flatmate from Japan", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.627107Z", + "index": 2014080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 202, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/01/202-british-comedy-monty-python-the-holy-grail/", + "post_title": "202. British Comedy: Monty Python & The Holy Grail", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.620110Z", + "index": 2014080101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/30/my-interview-on-zdeneks-english-podcast/", + "post_title": "My Interview on Zden\u011bk\u2019s English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.612113Z", + "index": 2014073001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 201, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/28/201-nikolay-kulikov-a-russian-comedian-in-london/", + "post_title": "201. Nikolay Kulikov: A Russian Comedian in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.605115Z", + "index": 2014072801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 200, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/25/200-new-competition-your-english-podcast/", + "post_title": "200. New Competition: \u201cYour English Podcast\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.597118Z", + "index": 2014072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 199, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/17/199-the-ukusa-quiz/", + "post_title": "199. The UK/USA Quiz", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.590119Z", + "index": 2014071702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 198, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/17/198-a-cup-of-tea-with-molly-martinez/", + "post_title": "198. A Cup of Tea with Molly Martinez", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.582123Z", + "index": 2014071701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 197, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/15/197-world-cup-2014-part-6-final-comments/", + "post_title": "197. World Cup 2014 (Part 6: Final Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.575125Z", + "index": 2014071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 196, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/07/196-cycling-from-coast-to-coast/", + "post_title": "196. Cycling from Coast to Coast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.567128Z", + "index": 2014070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 195, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/04/195-british-comedy-monty-pythons-flying-circus/", + "post_title": "195. British Comedy: Monty Python\u2019s Flying Circus", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.558130Z", + "index": 2014070401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 194, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/01/world-cup-2014-part-5-more-forum-comments/", + "post_title": "194. World Cup 2014 (Part 5: More Forum Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.551133Z", + "index": 2014070101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 192, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/30/192-culture-shock-life-in-london-part-1/", + "post_title": "192. Culture Shock: Life in London (Pt.1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.468160Z", + "index": 2014063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 191, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/25/191-culture-shock-the-4-stages/", + "post_title": "191. Culture Shock: The 4 Stages", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.460162Z", + "index": 2014062501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 190, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/23/190-world-cup-2014-part-4-some-history/", + "post_title": "190. World Cup 2014 (Part 4: Dad\u2019s Memories of 1966)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.453164Z", + "index": 2014062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 189, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/20/189-world-cup-2014-part-3-your-comments/", + "post_title": "189. World Cup 2014 (Part 3: Your Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.445167Z", + "index": 2014062001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 188, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/18/188-world-cup-2014-part-2-england-the-dark-side-of-the-world-cup/", + "post_title": "188. World Cup 2014 (Part 2: England & The Dark Side of the World Cup)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.438169Z", + "index": 2014061802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 187, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/18/187-world-cup-2014-part-1/", + "post_title": "187. World Cup 2014 (Part 1: The Basic Guide)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.430172Z", + "index": 2014061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 186, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/16/understanding-culture-shock/", + "post_title": "186. Understanding Culture Shock with Lindsay & Gabby", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.423175Z", + "index": 2014061601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 185, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/13/the-trip-to-new-york/", + "post_title": "185. The Trip to New York", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.414177Z", + "index": 2014061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/11/welcome-to-the-new-website-teacherluke-co-uk/", + "post_title": "Welcome to the New Website \u2013 teacherluke.co.uk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.406180Z", + "index": 2014061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 184, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/10/184-lukes-d-day-diary-part-2/", + "post_title": "184. Luke\u2019s D-Day Diary (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.399183Z", + "index": 2014061002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 183, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/10/183-lukes-d-day-diary/", + "post_title": "183. Luke\u2019s D-Day Diary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.391190Z", + "index": 2014061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 182, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/30/182-learning-english-with-yacine-belhousse/", + "post_title": "182. Learning English with Yacine Belhousse", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.384187Z", + "index": 2014053001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/28/my-interview-on-all-ears-english-podcast/", + "post_title": "My Interview on the All Ears English Podcast \u2013 Talking about humour, comedy and how to tell jokes in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.376190Z", + "index": 2014052801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 181, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/23/181-vocabulary-expressions-from-episode-180/", + "post_title": "181. Vocabulary & Expressions from Episode 180", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.368193Z", + "index": 2014052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 180, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/20/180-dislocated-shoulder/", + "post_title": "180. How my Brother Dislocated his Shoulder (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.359195Z", + "index": 2014052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 179, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/15/179-the-ramblings-of-an-exhausted-teacher/", + "post_title": "179. The Ramblings of an Exhausted Teacher", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.352198Z", + "index": 2014051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 178, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/30/178-im-still-here/", + "post_title": "178. I\u2019m Still Here", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.343206Z", + "index": 2014043001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/06/a-letter-to-my-listeners/", + "post_title": "A Letter to My Listeners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.336207Z", + "index": 2014040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 177, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "post_title": "177. What Londoners Say vs What They Mean", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.328210Z", + "index": 2014040101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 176, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/24/176-grammar-verb-tense-review/", + "post_title": "176. Grammar: Verb Tense Review", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.321212Z", + "index": 2014032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 175, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/18/175-the-phrasal-verb-chronicles-1/", + "post_title": "175. The Phrasal Verb Chronicles #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.313211Z", + "index": 2014031801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 174, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/12/174-how-to-learn-english-with-lukes-english-podcast/", + "post_title": "174. How to Learn English with Luke\u2019s English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.306213Z", + "index": 2014031201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 173, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/06/173-the-curse-of-the-lambton-worm/", + "post_title": "173. The Curse of The Lambton Worm", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.298220Z", + "index": 2014030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 172, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/26/172-british-comedy-peter-cook-dudley-moore/", + "post_title": "172. British Comedy: Peter Cook & Dudley Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.291222Z", + "index": 2014022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 171, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/21/171-a-cup-of-tea-with-daniel-burt-part-2/", + "post_title": "171. A Cup of Tea with Daniel Burt (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.283221Z", + "index": 2014022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 170, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/19/170-basking-in-my-moment-of-glory/", + "post_title": "170. Basking in My Moment of Glory", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.276227Z", + "index": 2014021901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 169, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/15/danielburt/", + "post_title": "169. A Cup of Tea with Daniel Burt (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.268225Z", + "index": 2014021501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 168, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/11/168-please-vote-and-stuff-like-that/", + "post_title": "168. Please Vote! (and stuff like that)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.261232Z", + "index": 2014021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 167, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/05/167-memory-mnemonics-learning-english/", + "post_title": "167. Memory, Mnemonics & Learning English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.253235Z", + "index": 2014020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 166, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/31/166-the-prawn-story/", + "post_title": "166. The Prawn Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.245237Z", + "index": 2014013101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 165, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/23/english-premier-league-football/", + "post_title": "165. English Premier League Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.238240Z", + "index": 2014012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 164, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/21/164-transcript-collaboration/", + "post_title": "164. Transcript Collaboration", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.231242Z", + "index": 2014012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 163, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/15/163-skype-chat-with-my-brother/", + "post_title": "163. Skype Chat with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.223244Z", + "index": 2014011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 162, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/10/162-having-babies-vocabulary-a-male-perspective/", + "post_title": "162. Having Babies: Vocabulary / A Male Perspective", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.216244Z", + "index": 2014011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 161, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/09/161-shes-having-a-baby/", + "post_title": "161. She\u2019s Having a Baby", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.208245Z", + "index": 2014010901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 160, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/24/160-the-a-to-z-of-christmas/", + "post_title": "160. The A to Z of Christmas", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.201248Z", + "index": 2013122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 158, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/23/158-159-a-cup-of-christmas-tea-with-paul-taylor/", + "post_title": "158 & 159. A Cup of Christmas Tea with\u2026 Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.193255Z", + "index": 2013122302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 157, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/23/157-a-cup-of-coffee-with-sarah-donnelly-part-2/", + "post_title": "157. A Cup of Coffee with\u2026 Sarah Donnelly (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.186252Z", + "index": 2013122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 156, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/12/156-british-comedy-ali-g/", + "post_title": "156. British Comedy: Ali G", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.178254Z", + "index": 2013121201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 155, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/05/155-a-cup-of-coffee-with-sarah-donnelly/", + "post_title": "155. A Cup of Coffee with\u2026 Sarah Donnelly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.171257Z", + "index": 2013120501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 154, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/27/154-british-slang-h-to-m/", + "post_title": "154. British Slang (H to M)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.163260Z", + "index": 2013112701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 153, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/20/153-the-talking-dog-story/", + "post_title": "153. The Talking Dog Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.156262Z", + "index": 2013112001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/14/doctor-who-episode-language-analysis/", + "post_title": "Doctor Who Episode \u2013 Language Analysis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.148264Z", + "index": 2013111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 152, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/06/152-im-leaving-podomatic-and-moving-to-audioboo-fm/", + "post_title": "152. I\u2019m leaving Podomatic\u2026 and moving to Audioboo.fm", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.141267Z", + "index": 2013110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 151, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/25/151-google-questions/", + "post_title": "151. Google Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.133271Z", + "index": 2013102502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 150, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/25/150-british-slang-d-to-g/", + "post_title": "150. British Slang (D to G)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.125272Z", + "index": 2013102501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 149, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/15/149-backing-up-into-the-cloud/", + "post_title": "149. Backing Up Into The Cloud", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.117276Z", + "index": 2013101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 148, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/12/148-british-slang-a-to-c/", + "post_title": "148. British Slang (A to C)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.108278Z", + "index": 2013091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 147, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/08/147-idioms-and-expressions-from-episodes-145-146/", + "post_title": "147. Idioms and Expressions from Episodes 145 & 146", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.101281Z", + "index": 2013090801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 146, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/05/146-nightmare-teaching-experiences-part-2/", + "post_title": "146. Nightmare Teaching Experiences (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.093287Z", + "index": 2013090501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 145, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/02/145-nightmare-teaching-experiences-part-1/", + "post_title": "145. Nightmare Teaching Experiences (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.086290Z", + "index": 2013090201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 144, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/29/144-the-chaos-of-english-pronunciation/", + "post_title": "144. The Chaos of English Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.078288Z", + "index": 2013082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 143, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/19/143-a-cup-of-tea-with-robert-hoehn/", + "post_title": "143. A Cup of Tea with\u2026 Robert Hoehn", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.071295Z", + "index": 2013081901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 142, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/04/142-the-annual-general-meeting-part-2/", + "post_title": "142. The Annual General Meeting (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.063299Z", + "index": 2013080402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 141, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/04/141-the-annual-general-meeting-part-1/", + "post_title": "141. The Annual General Meeting (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.056301Z", + "index": 2013080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 140, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/31/140-ghost-stories/", + "post_title": "140. Ghost Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.048304Z", + "index": 2013073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 139, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/09/139-hard-driving/", + "post_title": "139. Hard Driving", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.041307Z", + "index": 2013070901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 138, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/07/138-discussing-movies-part-2/", + "post_title": "138. Discussing Movies (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.033307Z", + "index": 2013070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 137, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/29/137-discussing-movies-part-1/", + "post_title": "137. Discussing Movies (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.025310Z", + "index": 2013062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 136, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/23/136-clycling-from-london-to-paris/", + "post_title": "136. Cycling from London to Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.018312Z", + "index": 2013062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 135, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/17/135-raining-animals/", + "post_title": "135. Raining Animals", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.010315Z", + "index": 2013061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 134, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/11/134-the-story-of-salvo/", + "post_title": "134. The Story of Salvo", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.003317Z", + "index": 2013061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/04/old-comments/", + "post_title": "Old Comments Box Archive", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.995320Z", + "index": 2013060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 133, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/01/133-hip-hop-lyric-analysis/", + "post_title": "133. Hip-Hop Lyric Analysis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.988322Z", + "index": 2013060101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 132, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/05/17/132-pronouncing-ed-endings-with-added-romance-and-horror/", + "post_title": "132. Pronouncing ~ed Endings (with Added Romance and Horror)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.979325Z", + "index": 2013051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 131, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/05/01/131-rickipedia/", + "post_title": "131. Rickipedia", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.972327Z", + "index": 2013050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 130, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/17/130-a-cup-of-tea-with-sebastian-marx/", + "post_title": "130. A Cup of Tea with\u2026 Sebastian Marx", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.963330Z", + "index": 2013041701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 129, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/10/129-a-cup-of-tea-with-pierre-gaspard/", + "post_title": "129. A Cup of Tea with\u2026 Pierre Gaspard", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.956332Z", + "index": 2013041001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 128, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/07/795/", + "post_title": "128. Luke\u2019s Stand-Up Comedy Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.949331Z", + "index": 2013040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/03/26/mini-podcast-feeling-nervous/", + "post_title": "Mini Podcast \u2013 Feeling Nervous", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.941332Z", + "index": 2013032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 127, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/03/04/127-computer-games/", + "post_title": "127. Computer Games", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.934335Z", + "index": 2013030401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 126, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/02/20/126-your-emails-comments-and-questions/", + "post_title": "126. Your Emails, Comments and Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.925344Z", + "index": 2013022001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 125, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/02/14/125-the-pink-gorilla-story/", + "post_title": "125. The Pink Gorilla Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.918340Z", + "index": 2013021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/23/another-award-winning-year/", + "post_title": "Another Award-Winning Year!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.910349Z", + "index": 2013012302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 124, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/23/124-james-bond/", + "post_title": "124. James Bond", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.903351Z", + "index": 2013012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/21/downloading-problems/", + "post_title": "Thanks for Voting / Downloading Problems", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.895354Z", + "index": 2013012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 123, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/20/123-whats-been-going-on/", + "post_title": "123. What\u2019s Been Going On?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.888356Z", + "index": 2013012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/10/competition-time-again/", + "post_title": "Competition Time Again!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.880360Z", + "index": 2013011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 122, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/12/20/122-the-end-of-the-world/", + "post_title": "122. The End of the World?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.873362Z", + "index": 2012122001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 121, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/12/10/121-americanisms-part-2/", + "post_title": "121: Americanisms (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.866358Z", + "index": 2012121001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 120, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/11/10/120-americanisms/", + "post_title": "120. Americanisms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.857366Z", + "index": 2012111001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 119, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/17/119-first-impressions-of-life-in-paris/", + "post_title": "119. First Impressions of Life in Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.850363Z", + "index": 2012101702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 118, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/17/118-sick-in-japan/", + "post_title": "118. Sick in Japan", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.841366Z", + "index": 2012101701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 117, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/11/117-psychics-cold-reading-barnum-statements/", + "post_title": "117. Psychics / Cold Reading / Barnum Statements", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.833368Z", + "index": 2012101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 116, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/10/116-could-it-be-you/", + "post_title": "116. Could it be you\u2026?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.826370Z", + "index": 2012101001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 115, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/04/115-a-chat-about-music/", + "post_title": "115. A Chat About Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.818377Z", + "index": 2012100401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 114, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/02/693/", + "post_title": "114. Twelve Natural Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.810380Z", + "index": 2012100201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 112, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/20/vocabulary-review-episodes-1-11/", + "post_title": "112. Vocabulary Review \u2013 Episodes 1-11", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.745401Z", + "index": 2012092001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 111, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/17/thanks-for-your-comments/", + "post_title": "111. Thanks for your comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.738404Z", + "index": 2012091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 110, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/12/a-letter-from-luke/", + "post_title": "110. A Letter from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.730406Z", + "index": 2012091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 109, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/29/friday-night-banter-aka-the-slightly-drunk-episode/", + "post_title": "109. Friday Night Banter (aka The Slightly Drunk Episode)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.723409Z", + "index": 2012082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/", + "post_title": "London Olympics 2012 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.715408Z", + "index": 2012080602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 108, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/06/in-bed-with-luke/", + "post_title": "108. In Bed with Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.708413Z", + "index": 2012080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 107, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/07/02/messing-around-with-accents-and-voices/", + "post_title": "107. Messing Around with Accents and Voices", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.700412Z", + "index": 2012070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 106, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/29/brighton-fringe-festival-3/", + "post_title": "106. Brighton Fringe Festival #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.692419Z", + "index": 2012062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 105, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/17/brighton-fringe-festival-2/", + "post_title": "105. Brighton Fringe Festival #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.685421Z", + "index": 2012061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 104, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/07/brighton-fringe-festival-1/", + "post_title": "104. Brighton Fringe Festival #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.677423Z", + "index": 2012060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 103, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/04/the-queen-and-the-royal-family/", + "post_title": "103. The Queen and The Royal Family", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.670426Z", + "index": 2012060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 102, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/30/competition-winners/", + "post_title": "102. Competition Winners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.662428Z", + "index": 2012053001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 101, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/17/a-note-from-luke/", + "post_title": "101. A Note from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.655431Z", + "index": 2012051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 100, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/12/going-to-the-pub/", + "post_title": "100. Going To The Pub", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.647429Z", + "index": 2012051201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 99, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/29/the-rotary-sushi-bar-of-english/", + "post_title": "99. The Rotary Sushi Bar of English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.640431Z", + "index": 2012042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 98, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/28/luke-vs-oliver-part-2/", + "post_title": "98. Luke vs Oliver (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.632434Z", + "index": 2012042801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 97, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/20/luke-vs-oliver-part-1/", + "post_title": "97. Luke vs Oliver (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.625436Z", + "index": 2012042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 94, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/12/competition-entries/", + "post_title": "94 \u2013 96. Competition Entries", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.617439Z", + "index": 2012041201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 93, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/11/weird-or-just-different/", + "post_title": "93. Weird\u2026 or just different?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.610441Z", + "index": 2012041101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 92, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/uk-royal-family-opinions-video-part-2-video-uploading-now-on-youtube/%20", + "post_title": "92. UK Royal Family Opinions \u2013 Video (Part 2) [TRANSCRIPT]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.602443Z", + "index": 2012041004, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/competition-update/", + "post_title": "Competition Update", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.594446Z", + "index": 2012041003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 91, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/the-a-to-z-of-random-thoughts/", + "post_title": "91. The A to Z of Random Thoughts", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.587448Z", + "index": 2012041002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 90, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/competition-phrasal-verbs-a-b-c/", + "post_title": "90. Competition + Phrasal Verbs A, B + C", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.580451Z", + "index": 2012041001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 89, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/13/a-day-in-the-life/", + "post_title": "89. A Day In The Life", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.573453Z", + "index": 2012031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 88, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/12/how-to-play-the-drums/", + "post_title": "88. How To Play The Drums", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.564456Z", + "index": 2012031201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 87, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/07/6-idioms-and-6-phrasal-verbs/", + "post_title": "87. 6 Idioms and 6 Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.557459Z", + "index": 2012030702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 86, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/07/criminal-law/", + "post_title": "86. Criminal Law", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.549462Z", + "index": 2012030701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 85, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/06/a-stand-up-comedy-gig/", + "post_title": "85. A Stand-up Comedy Gig", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.540470Z", + "index": 2012030602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 84, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/06/lukes-english-braincast/", + "post_title": "84. Luke\u2019s English Braincast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.532468Z", + "index": 2012030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 83, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/how-to-swear-in-british-english-very-rude-content/", + "post_title": "83. How to Swear in British English \u2013 VERY RUDE CONTENT", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.523474Z", + "index": 2012013003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 82, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/voting-elections-politics-government/", + "post_title": "82. Voting / Elections / Politics / Government", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.515473Z", + "index": 2012013002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 81, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/what-makes-a-great-teacher/", + "post_title": "81. What Makes a Great Teacher?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.508479Z", + "index": 2012013001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 80, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/essential-social-english/", + "post_title": "80. Essential Social English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.500477Z", + "index": 2012012304, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 79, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/family-arguments-and-debates/", + "post_title": "79. Family Arguments and Debates", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.493484Z", + "index": 2012012303, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 78, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/christmas-its-all-about-family/", + "post_title": "78. Christmas \u2013 It\u2019s all about Family", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.486486Z", + "index": 2012012302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 77, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/bear-vs-shark/", + "post_title": "77. Bear vs Shark", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.478489Z", + "index": 2012012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/15/vote-for-lukes-english-podcast/", + "post_title": "VOTE FOR LUKE\u2019S ENGLISH PODCAST", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.470491Z", + "index": 2012011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 76, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/07/mind-the-gap-how-to-use-the-london-underground/", + "post_title": "76. Mind The Gap \u2013 How to use the London Underground", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.462494Z", + "index": 2011110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 75, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/03/258/", + "post_title": "75. Not a Distraction!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.455496Z", + "index": 2011110302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 74, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/03/uk-royal-family-opinions-english-interviews-in-london/", + "post_title": "74. UK Royal Family Opinions \u2013 English Interviews in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.447499Z", + "index": 2011110301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 73, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/steve-jobs/", + "post_title": "73. Steve Jobs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.440501Z", + "index": 2011101408, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 72, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/the-cheese-episode/", + "post_title": "72. The Cheese Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.433504Z", + "index": 2011101407, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 71, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/the-ice-cream-episode/", + "post_title": "71. The Ice Cream Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.425507Z", + "index": 2011101406, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 70, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/language-and-music/", + "post_title": "70. Language and Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.418506Z", + "index": 2011101405, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 69, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/common-errors-typical-mistakes/", + "post_title": "69. Common Errors / Typical Mistakes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.410511Z", + "index": 2011101404, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 68, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/childhood-growing-up-school-days-phrasal-verbs-and-expressions/", + "post_title": "68. Childhood / Growing Up / School Days \u2013 Phrasal Verbs and Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.402514Z", + "index": 2011101403, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 67, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/cockney-london-accent/", + "post_title": "67. Cockney / London Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.394518Z", + "index": 2011101402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 66, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/top-advice-for-learning-english-idioms-with-say-culture-shock/", + "post_title": "66. Top Advice for Learning English / Idioms with \u2018say\u2019 / Culture Shock", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.387521Z", + "index": 2011101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 65, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", + "post_title": "65. London Video Interviews Pt 5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.379523Z", + "index": 2011101211, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 64, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", + "post_title": "64. London Video Interviews Part 5 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.372524Z", + "index": 2011101210, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 63, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/german-and-british-cultural-identity-paco-erhard-interview-part-2/", + "post_title": "63. German and British Cultural Identity \u2013 Paco Erhard interview part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.364522Z", + "index": 2011101209, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 62, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/learning-english-advice-from-a-german-comedian-living-in-london/", + "post_title": "62. Learning English \u2013 Advice from a German comedian living in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.356524Z", + "index": 2011101208, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 61, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/127-hours-hand-idioms/", + "post_title": "61. 127 Hours / \u2018Hand\u2019 Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.349528Z", + "index": 2011101207, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 60, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/the-kings-speech-mouth-idioms/", + "post_title": "60. The King\u2019s Speech / \u2018Mouth\u2019 Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.340529Z", + "index": 2011101206, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 59, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/billy-connolly-interview-more-scottish-accent/", + "post_title": "59. Billy Connolly Interview / More Scottish Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.332533Z", + "index": 2011101205, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 58, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/scotland-scottish-accent/", + "post_title": "58. Scotland / Scottish Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.325539Z", + "index": 2011101204, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 57, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/birmingham-accent-12-phrasal-verbs-with-the-letter-a/", + "post_title": "57. Birmingham Accent / 12 Phrasal Verbs with the letter \u2018A\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.317543Z", + "index": 2011101203, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 56, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/british-accents-and-dialects/", + "post_title": "56. British Accents and Dialects", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.310544Z", + "index": 2011101202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 55, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/mini-podcasts-collection-1/", + "post_title": "55. Mini Podcasts Collection 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.302543Z", + "index": 2011101201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 54, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/halloween-guy-fawkes-night/", + "post_title": "54. Halloween / Guy Fawkes Night", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.295549Z", + "index": 2011101112, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 53, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/discussing-grammar-with-my-brother/", + "post_title": "53. Discussing Grammar with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.287554Z", + "index": 2011101111, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 52, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/154/", + "post_title": "52. London Video Interviews Part 4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.280550Z", + "index": 2011101110, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 51, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/luke-answers-your-emails-and-questions/", + "post_title": "51. Luke Answers Your Emails and Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.273552Z", + "index": 2011101109, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 50, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/good-things-come-to-those-who-wait/", + "post_title": "50. Good Things Come To Those Who Wait", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.265555Z", + "index": 2011101108, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 49, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/stand-up-comedy/", + "post_title": "49. Stand Up Comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.258561Z", + "index": 2011101107, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 48, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/useful-expressions-for-travelling/", + "post_title": "48. Useful Expressions for Travelling", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.250559Z", + "index": 2011101106, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 47, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/travelling-in-vietnam/", + "post_title": "47. Travelling in Vietnam", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.243561Z", + "index": 2011101105, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 46, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/46-im-on-holiday-ill-be-back-in-a-couple-of-weeks/", + "post_title": "46. I\u2019m on Holiday! I\u2019ll be back in a couple of weeks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.236564Z", + "index": 2011101104, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 45, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/luke-andys-crime-stories/", + "post_title": "45. Luke & Andy\u2019s Crime Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.228571Z", + "index": 2011101103, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 44, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/telling-anecdotes/", + "post_title": "44. Telling Anecdotes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.221569Z", + "index": 2011101102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 43, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/notting-hill-carnival-video-frustration-out-takes/", + "post_title": "43. Notting Hill Carnival Video Frustration (Out-takes)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.213576Z", + "index": 2011101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 42, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", + "post_title": "42. London Video Interviews Pt 3 (Audio)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.205578Z", + "index": 2011032902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 41, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", + "post_title": "41. London Video Interviews Part 3 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.197581Z", + "index": 2011032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 40, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/health-feeling-ill-phrasal-verbs-expressions/", + "post_title": "40. Health / Feeling ill \u2013 Phrasal Verbs & Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.190583Z", + "index": 2010032604, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 39, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/subtitles-in-videos/", + "post_title": "39. Subtitles in Videos (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.183581Z", + "index": 2010032603, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 38, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/116/", + "post_title": "38. London Video Interviews Part 2 (Audio)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.175583Z", + "index": 2010032602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 37, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/116/", + "post_title": "37. London Video Interviews Part 2 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.168586Z", + "index": 2010032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 33, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/15/money-money-money-12-phrasal-verbs-more/", + "post_title": "33. Money Money Money \u2013 12 Phrasal Verbs & more\u2026", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.943456Z", + "index": 2009111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 32, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/doctor-who/", + "post_title": "32. Doctor Who", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.936456Z", + "index": 2009111403, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 31, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/hello-argument-sketch/", + "post_title": "31. Hello! / Argument Sketch", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.929459Z", + "index": 2009111402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 30, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/the-mystery-continues/", + "post_title": "30. The Mystery Continues\u2026", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.922462Z", + "index": 2009111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 29, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/12/mystery-story-narrative-tenses/", + "post_title": "29. Mystery Story / Narrative Tenses", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.914464Z", + "index": 2009111202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 28, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/12/interview-with-a-native-speaker-the-weather/", + "post_title": "28. Interview with a Native Speaker \u2013 The Weather", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.907466Z", + "index": 2009111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 27, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/10/british-weather-lots-of-exciting-vocabulary/", + "post_title": "27. British Weather (Lots of exciting vocabulary!!!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.899465Z", + "index": 2009111002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 26, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/10/are-you-a-good-learner-of-english/", + "post_title": "26. Are you a good learner of English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.892471Z", + "index": 2009111001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 25, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/07/notting-hill-carnival-40-phrasal-verbs/", + "post_title": "25. Notting Hill Carnival \u2013 40 Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.884469Z", + "index": 2009110702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 24, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/07/music-idioms/", + "post_title": "24. Music Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.876477Z", + "index": 2009110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 23, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/summer-music-festivals/", + "post_title": "23. Summer Music Festivals", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.869479Z", + "index": 2009102003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 22, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/full-interview-with-vicky-from-china/", + "post_title": "22. Full Interview with Vicky from China", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.860483Z", + "index": 2009102002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 21, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/learning-english-with-podcasts-advice-from-a-chinese-student-at-oxford-university/", + "post_title": "21. Learning English with Podcasts \u2013 Advice from a Chinese student at Oxford University", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.853485Z", + "index": 2009102001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 20, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/beware-of-bad-pronunciation/", + "post_title": "20. Beware of Bad Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.844482Z", + "index": 2009101913, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 19, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/passive-verb-forms/", + "post_title": "19. Passive Verb Forms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.837490Z", + "index": 2009101912, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 18, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/46/", + "post_title": "18. 10 More Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.829492Z", + "index": 2009101911, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 17, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/hello-to-my-listeners-around-the-world/", + "post_title": "17. Hello To My Listeners Around The World", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.822494Z", + "index": 2009101910, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 14, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-10-british-and-american-pronunciation/", + "post_title": "14. British & American Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.658549Z", + "index": 2009101907, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 13, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/video-podcast-i-like-it/", + "post_title": "13. Video Podcast \u2013 I LIKE IT!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.651550Z", + "index": 2009101906, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 12, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-3/", + "post_title": "12. Extra Podcast \u2013 Quick Hello 3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.643553Z", + "index": 2009101905, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 11, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-9-men-vs-women/", + "post_title": "11. Men vs Women", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.636555Z", + "index": 2009101904, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 10, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-2/", + "post_title": "10. Extra Podcast \u2013 Quick Hello 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.628553Z", + "index": 2009101903, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 9, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-8-travelling-in-india/", + "post_title": "9. Travelling in India", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.621555Z", + "index": 2009101902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 8, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-7-dating-and-relationships/", + "post_title": "8. Dating and Relationships", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.613562Z", + "index": 2009101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 7, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/30/episode-6-susan-boyle/", + "post_title": "7. Susan Boyle", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.606565Z", + "index": 2009043001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 6, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/24/episode-5-vampires/", + "post_title": "6. Vampires!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.598563Z", + "index": 2009042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 5, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/23/episode-4-joaquin-phoenix/", + "post_title": "5. Joaquin Phoenix", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.590565Z", + "index": 2009042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 4, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/19/extra-podcast-quick-hello/", + "post_title": "4. Extra Podcast \u2013 Quick Hello", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.583573Z", + "index": 2009041901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 3, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/15/episode-3-musicthe-beatles/", + "post_title": "3. Music/The Beatles", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.575575Z", + "index": 2009041501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 2, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/14/episode-2-easter/", + "post_title": "2. Easter / Interview with my Dad / Language Focus: Adverbials", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.567577Z", + "index": 2009041401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + } +] \ No newline at end of file diff --git a/tests/test_parser.py b/tests/test_parser.py index f2d07d7..5fd179a 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,16 +1,21 @@ """Test cases for the parser module.""" +import json import typing as t +import tempfile from datetime import datetime from pathlib import Path +import pytest import requests import requests_mock as req_mock from bs4 import BeautifulSoup +from pytest import CaptureFixture from requests_mock.mocker import Mocker as rm_Mocker from requests_mock.response import _Context as rm_Context from lep_downloader import config as conf from lep_downloader import parser +from lep_downloader import lep from lep_downloader.lep import LepEpisode @@ -255,7 +260,7 @@ def test_parsing_invalid_html(requests_mock: rm_Mocker) -> None: markup: str = '' requests_mock.get(conf.ARCHIVE_URL, text=markup) parsing_result = parser.get_archive_parsing_results(conf.ARCHIVE_URL) - assert parsing_result is None + assert parsing_result == (None, None, None) def test_parsing_archive_without_episodes() -> None: @@ -521,3 +526,268 @@ def test_episodes_sorting_by_date() -> None: ] sorted_episodes = parser.sort_episodes_by_post_date(episodes) assert sorted_episodes == expected_sorted + + +def test_writing_lep_episodes_to_json() -> None: + """It creates JSON file from list of LepEpisode objects.""" + lep_ep_1 = LepEpisode( + 702, + url="https://teacherluke.co.uk/2021/01/25/702-emergency-questions-with-james/", + index=2021012501, + ) + # lep_ep_2_dict = {"episode": 2, "post_title": "2. Test episode #2"} # type: t.Dict[str, object] + # lep_ep_2 = LepEpisode(**lep_ep_2_dict) + lep_ep_2 = LepEpisode(episode=2, post_title="2. Test episode #2") + episodes = [ + lep_ep_1, + lep_ep_2, + ] + file = Path() + with tempfile.NamedTemporaryFile(delete=False) as temp_file: + json_file = Path(temp_file.name) + parser.write_parsed_episodes_to_json(episodes, json_file) + py_from_json = json.load(temp_file) + assert len(py_from_json) == 2 + assert ( + py_from_json[0]["url"] + == "https://teacherluke.co.uk/2021/01/25/702-emergency-questions-with-james/" + ) + file = Path(temp_file.name) + file.unlink() + + +def mock_json_db(request: requests.Request, context: rm_Context) -> t.IO[bytes]: + """Callback for creating mocked Response of episode page.""" + # context.status_code = 200 + local_path = OFFLINE_HTML_DIR / "mocked-db-json-equal-786-objects.json" + return open(local_path, "rb") + + +def test_no_new_episodes_on_archive_vs_json_db( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints when no new episodes on archive page.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + body=mock_json_db, + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "There are no new episodes. Exit." in captured.out + + +def test_no_valid_episode_objects_in_json_db( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints warning when there are no valid episode objects.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + + requests_mock.get( + conf.JSON_DB_URL, + text="[]", + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + + captured = capsys.readouterr() + + assert "[WARNING]" in captured.out + assert "no valid episode objects" in captured.out + + +def test_json_db_not_valid( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints error for invalid JSON document.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text="", + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "[ERROR]" in captured.out + assert "Data is not a valid JSON document." in captured.out + + +def test_json_db_not_available( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints error for unavailable JSON database.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text="JSON not found", + status_code=404, + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "JSON database is not available. Exit." in captured.out + + +def test_json_db_contains_only_string( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints warning for JSON as str.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text='"episode"', + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "[WARNING]" in captured.out + assert "no valid episode objects" in captured.out + + +def test_invalid_objects_in_json_not_included( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It skips invalid objects in JSON database.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text='[{"episode": 1, "fake_key": "Skip me"}]', + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "[WARNING]" in captured.out + assert "no valid episode objects" in captured.out + + +def modified_json_db(request: requests.Request, context: rm_Context) -> str: + """Callback for creating mocked JSON database with less episodes.""" + # context.status_code = 200 + local_path = OFFLINE_HTML_DIR / "mocked-db-json-equal-786-objects.json" + mocked_json = local_path.read_text(encoding="utf-8") + db_episodes = json.loads(mocked_json, object_hook=parser.as_lep_episode_obj) + # Delete three episodes + del db_episodes[0] + del db_episodes[1] + del db_episodes[6] + modified_json = json.dumps(db_episodes, cls=lep.LepJsonEncoder) + return modified_json + + +def test_updating_json_database_with_new_episodes( + requests_mock: rm_Mocker, +) -> None: + """It retrives and saves new episodes from archive.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text=modified_json_db, + ) + + with tempfile.NamedTemporaryFile(prefix="LEP_tmp_", delete=False) as temp_file: + json_file = Path(temp_file.name) + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL, json_file) + py_from_json = json.load(temp_file, object_hook=parser.as_lep_episode_obj) + json_file.unlink() + + assert len(py_from_json) == 786 + + +def modified_json_with_extra_episode( + request: requests.Request, + context: rm_Context, +) -> str: + """Callback for creating mocked JSON database with more episodes.""" + local_path = OFFLINE_HTML_DIR / "mocked-db-json-equal-786-objects.json" + mocked_json = local_path.read_text(encoding="utf-8") + db_episodes = json.loads(mocked_json, object_hook=parser.as_lep_episode_obj) + # Add extra episode + lep_ep = LepEpisode(episode=999, post_title="Extra episode") + db_episodes.append(lep_ep) + modified_json = json.dumps(db_episodes, cls=lep.LepJsonEncoder) + return modified_json + + +def test_updating_json_database_with_extra_episodes( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints warning if database contains more episodes than archive.""" + requests_mock.get(conf.ARCHIVE_URL, body=mock_archive_page) + requests_mock.get( + req_mock.ANY, + additional_matcher=mocked_single_page_matcher, + body=mock_single_page, + ) + requests_mock.get( + conf.JSON_DB_URL, + text=modified_json_with_extra_episode, + ) + + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "[WARNING]" in captured.out + assert "Database contains more episodes than current archive!" in captured.out + + +def test_parsing_invalid_html_in_main_actions( + requests_mock: rm_Mocker, + capsys: CaptureFixture[str], +) -> None: + """It prints error when no episode links on archive page.""" + markup: str = '' + requests_mock.get(conf.ARCHIVE_URL, text=markup) + parser.do_parsing_actions(conf.JSON_DB_URL, conf.ARCHIVE_URL) + captured = capsys.readouterr() + assert "[ERROR]" in captured.out + assert "Can't parse any episodes from archive page." in captured.out + + +def test_encoding_non_serializable_json_object() -> None: + """It raises exception TypeError for non-serializable types.""" + obj = [complex(2 + 1)] + with pytest.raises(TypeError): + _ = json.dumps(obj, cls=lep.LepJsonEncoder) From b7d092d7a234b923c8e714b695ed0b8dea0e54b3 Mon Sep 17 00:00:00 2001 From: Artem Hotenov Date: Tue, 19 Oct 2021 08:55:27 +0300 Subject: [PATCH 54/54] style: :art: Fix imports by pre-commit Add json files to exclude types in '.pre-commit-config.yaml' --- .pre-commit-config.yaml | 6 +- src/lep_downloader/parser.py | 3 +- .../mocked-db-json-equal-786-objects.json | 17426 ++++++++-------- tests/test_parser.py | 4 +- 4 files changed, 8714 insertions(+), 8725 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3d662e6..2ee3c87 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -35,7 +35,7 @@ repos: language: system types: [text] stages: [commit, push, manual] - exclude_types: [html] + exclude_types: [html, json] - id: flake8 name: flake8 entry: flake8 @@ -54,9 +54,9 @@ repos: language: system types: [text] stages: [commit, push, manual] - exclude_types: [html] + exclude_types: [html, json] - repo: https://github.com/pre-commit/mirrors-prettier rev: v2.3.0 hooks: - id: prettier - exclude_types: [html] + exclude_types: [html, json] diff --git a/src/lep_downloader/parser.py b/src/lep_downloader/parser.py index 5749a4b..d8764be 100644 --- a/src/lep_downloader/parser.py +++ b/src/lep_downloader/parser.py @@ -7,7 +7,8 @@ from datetime import timezone from operator import attrgetter from pathlib import Path -from typing import Any, Dict +from typing import Any +from typing import Dict from typing import List from typing import Optional from typing import Tuple diff --git a/tests/fixtures/mocked-db-json-equal-786-objects.json b/tests/fixtures/mocked-db-json-equal-786-objects.json index 731ae81..719bbce 100644 --- a/tests/fixtures/mocked-db-json-equal-786-objects.json +++ b/tests/fixtures/mocked-db-json-equal-786-objects.json @@ -1,8720 +1,8708 @@ [ - { - "episode": 733, - "date": "2021-08-03T18:12:02+02:00", - "url": "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/", - "post_title": "733. A Summer Ramble", - "post_type": "AUDIO", - "audios": [ - [ - "https://traffic.libsyn.com/secure/teacherluke/733._A_Summer_Ramble.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:31.597990Z", - "index": 2021080301, - "admin_note": "" - }, - { - "episode": 714, - "date": "2021-04-11T23:32:42+02:00", - "url": "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%F0%9F%87%A9%F0%9F%87%AA-wisbolep-runner-up/", - "post_title": "714. Robin from Hamburg (WISBOLEP Runner-Up)", - "post_type": "AUDIO", - "audios": [ - [ - "https://traffic.libsyn.com/secure/teacherluke/714._Robin_from_Hamburg__WISBOLEP_Runner-Up.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:31.361072Z", - "index": 2021041101, - "admin_note": "" - }, - { - "episode": 711, - "date": "2021-03-26T15:06:43+01:00", - "url": "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%F0%9F%87%AB%F0%9F%87%B7-wisbolep-runner-up/", - "post_title": "711. William from France (WISBOLEP Runner-UP)", - "post_type": "AUDIO", - "audios": [ - [ - "https://traffic.libsyn.com/secure/teacherluke/711._William_from_France__WISBOLEP_Runner-UP.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:31.264099Z", - "index": 2021032601, - "admin_note": "" - }, - { - "episode": 703, - "date": "2021-02-03T18:33:04+01:00", - "url": "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%F0%9F%8F%86/", - "post_title": "703. Walaa from Syria \u2013 WISBOLEP Competition Winner", - "post_type": "AUDIO", - "audios": [ - [ - "https://traffic.libsyn.com/secure/teacherluke/703._Walaa_from_Syria_-_WISBOLEP_Competition_Winner_.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:31.140983Z", - "index": 2021020301, - "admin_note": "" - }, - { - "episode": 0, - "date": "2017-08-26T07:30:24+02:00", - "url": "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/", - "post_title": "[Website only] A History of British Pop \u2013 A Musical Tour through James\u2019 Vinyl Collection", - "post_type": "TEXT", - "audios": [], - "parsing_utc": "2021-10-14T07:35:29.221311Z", - "index": 2017082601, - "admin_note": "" - }, - { - "episode": 0, - "date": "2017-05-26T12:46:40+02:00", - "url": "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", - "post_title": "I was invited onto the \u201cEnglish Across The Pond\u201d Podcast", - "post_type": "TEXT", - "audios": [], - "parsing_utc": "2021-10-14T07:35:28.963595Z", - "index": 2017052601, - "admin_note": "" - }, - { - "episode": 0, - "date": "2017-03-11T18:45:49+01:00", - "url": "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/", - "post_title": "LEP on ZEP \u2013 My recent interview on Zdenek\u2019s English Podcast", - "post_type": "AUDIO", - "audios": [ - [ - "https://audioboom.com/posts/5602875-episode-166-luke-back-on-zep-part-1.mp3" - ], - [ - "https://audioboom.com/posts/5621870-episode-167-luke-back-on-zep-part-2.mp3" - ], - [ - "https://audioboom.com/posts/5627735-episode-168-luke-back-on-zep-part-3.mp3" - ], - [ - "https://audioboom.com/posts/5678762-episode-169-luke-back-on-zep-part-4.mp3" - ], - [ - "https://audioboom.com/posts/5695159-episode-170-luke-back-on-zep-part-5-analysis.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:28.727674Z", - "index": 2017031101, - "admin_note": "" - }, - { - "episode": 370, - "date": "2016-08-07T15:30:38+02:00", - "url": "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/", - "post_title": "370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:28.165853Z", - "index": 2016080701, - "admin_note": "" - }, - { - "episode": 305, - "date": "2015-10-07T09:25:39+02:00", - "url": "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/", - "post_title": "305. Back To The Future (Part 2)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/300-2-episode-300-part-2.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:27.557253Z", - "index": 2015102201, - "admin_note": "" - }, - { - "episode": 304, - "date": "2015-10-07T09:21:24+02:00", - "url": "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/", - "post_title": "304. Back To The Future (Part 1)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/300-1-episode-300-part-1.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:27.477279Z", - "index": 2015102101, - "admin_note": "" - }, - { - "episode": 193, - "date": "2014-06-30T15:37:44+02:00", - "url": "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/", - "post_title": "193. Culture Shock: Life in London (Pt.2)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/193-culture-shock-life-in-london-part-2.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:26.476157Z", - "index": 2014063002, - "admin_note": "" - }, - { - "episode": 113, - "date": "2012-09-27T11:49:36+02:00", - "url": "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/", - "post_title": "113. Setting The World To Rights", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/113-setting-the-world-to-rights.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:25.753394Z", - "index": 2012092701, - "admin_note": "" - }, - { - "episode": 36, - "date": "2010-03-25T22:59:36+01:00", - "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", - "post_title": "36. London Video Interviews \u2013 Part 1 (Audio)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:25.059621Z", - "index": 2010032502, - "admin_note": "" - }, - { - "episode": 35, - "date": "2010-03-25T22:59:36+01:00", - "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", - "post_title": "35. London Video Interviews \u2013 Part 1 (Video)", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:24.951658Z", - "index": 2010032501, - "admin_note": "" - }, - { - "episode": 16, - "date": "2009-10-19T21:21:43+02:00", - "url": "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/", - "post_title": "16. Michael Jackson", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/16-michael-jackson.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:24.719523Z", - "index": 2009101909, - "admin_note": "" - }, - { - "episode": 15, - "date": "2009-10-19T21:14:49+02:00", - "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/", - "post_title": "15. Extra Podcast \u2013 12 Phrasal Verbs", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/15-extra-podcast-12-phrasal-verbs.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:24.665541Z", - "index": 2009101908, - "admin_note": "" - }, - { - "episode": 1, - "date": "2009-04-12T15:23:33+02:00", - "url": "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/", - "post_title": "1. Introduction", - "post_type": "AUDIO", - "audios": [ - [ - "http://traffic.libsyn.com/teacherluke/1-introduction.mp3" - ] - ], - "parsing_utc": "2021-10-14T07:35:24.499596Z", - "index": 2009041201, - "admin_note": "" - }, - { - "episode": 732, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/07/29/732-christian-from-canguro-english-returns/", - "post_title": "732. Christian from Canguro English returns", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.589992Z", - "index": 2021072901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 731, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/07/25/731-beatles-song-lyrics-idioms-expressions-with-antony-rotunno/", - "post_title": "731. Beatles Song Lyrics / Idioms & Expressions (with Antony Rotunno)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.582996Z", - "index": 2021072501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 730, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/07/19/730-marie-connolly-returns-2-songs/", - "post_title": "730. Marie Connolly Returns (+ 2 songs)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.574997Z", - "index": 2021071901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 729, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/07/13/729-toefl-and-the-duolingo-english-test-with-josh-macpherson-from-tstprep-com/", - "post_title": "729. TOEFL and the Duolingo English Test (with Josh MacPherson from TSTPrep.com)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.567001Z", - "index": 2021071301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 728, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/07/05/728-english-with-rob-games-music-jingles/", - "post_title": "728. English with Rob / Games, Music & Jingles", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.559003Z", - "index": 2021070501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 727, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/30/727-describing-john-lennon-adjectives-of-personality-j-z-with-antony-rotunno/", - "post_title": "727. Describing John Lennon / Adjectives of Personality J-Z (with Antony Rotunno)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.551006Z", - "index": 2021063001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 726, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/26/726-describing-john-lennon-adjectives-of-personality-a-i-with-antony-rotunno/", - "post_title": "726. Describing John Lennon / Adjectives of Personality A-I (with Antony Rotunno)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.541009Z", - "index": 2021062601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/22/bonus-euro2020-swapcast-with-martin-johnston-rnr-zdenek-lukas-zep/", - "post_title": "BONUS: EURO2020 Swapcast with Martin Johnston (RnR) & Zdenek Lukas (ZEP) Parts 1 & 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.530012Z", - "index": 2021062201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 725, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/17/725-fun-games-for-learning-english-with-vickie-kelty/", - "post_title": "725. Fun & Games for Learning English with Vickie Kelty", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.523015Z", - "index": 2021061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/16/unboxing-my-shiny-youtube-award-for-100000-subscribers-audio-and-video-versions/", - "post_title": "Unboxing my Shiny YouTube Award for 100,000 Subscribers (Audio and Video Versions)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.508024Z", - "index": 2021061601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 724, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/11/724-the-mountain-short-story-video/", - "post_title": "724. The Mountain (Short Story) + Video", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.515022Z", - "index": 2021061101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 723, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/06/04/723-bahar-from-iran-wisbolep-runner-up/", - "post_title": "723. Bahar from Iran (WISBOLEP Runner-Up)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.500023Z", - "index": 2021060401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 722, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/05/29/722-discussing-john-lennon-with-antony-rotunno/", - "post_title": "722. Discussing John Lennon with Antony Rotunno", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.492024Z", - "index": 2021052901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 721, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/05/24/721-collins-dictionary-word-quizzes-with-fred-eyangoh/", - "post_title": "721. Collins Dictionary Word Quizzes / Confusing Words with Fred Eyangoh", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.485028Z", - "index": 2021052401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 720, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/05/18/720-how-fred-learns-vocabulary-with-the-new-york-times-spelling-bee-with-fred-eyangoh/", - "post_title": "720. How Fred Learns Vocabulary with the New York Times Spelling Bee (with Fred Eyangoh)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.477031Z", - "index": 2021051801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 719, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/05/10/719-amber-paul-are-on-the-podcast/", - "post_title": "719. Amber & Paul are on the Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.469033Z", - "index": 2021051001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 718, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/05/03/718-michael-the-shaman-wisbloep-runner-up/", - "post_title": "718. Michael the Shaman (WISBLOEP Runner-Up)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.461035Z", - "index": 2021050301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 717, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/04/27/717-gills-book-club-one-two-three-four-the-beatles-in-time-by-craig-brown/", - "post_title": "717. Gill\u2019s Book Club: \u201cOne Two Three Four \u2013 The Beatles In Time\u201d by Craig Brown", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.454042Z", - "index": 2021042701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 716, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/04/22/716-interview-with-a-pop-star-from-the-1960s-megan-brady-from-the-applejacks/", - "post_title": "716. Interview with a Pop Star from the 1960s \u2013 Megan Brady from The Applejacks", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.446040Z", - "index": 2021042201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 715, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/04/16/715-catching-up-with-craig-wealand-lep-airc-swapcast/", - "post_title": "715. Catching up with Craig Wealand [LEP/AIRC Swapcast]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.439042Z", - "index": 2021041601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 713, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/04/07/713-lucky-dip-with-paul-taylor/", - "post_title": "713. Lucky Dip with Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.354075Z", - "index": 2021040701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 712, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/04/03/712-a-chat-with-charlie-baxter/", - "post_title": "712. A Chat with Charlie Baxter", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.345073Z", - "index": 2021040301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 710, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/03/17/710-the-umbrella-man-by-roald-dahl-short-story/", - "post_title": "710. The Umbrella Man by Roald Dahl (Short Story)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.257102Z", - "index": 2021031701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 709, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/03/11/709-the-stoicism-of-groundhog-day-with-mum/", - "post_title": "709. The Stoicism of Groundhog Day (with Mum)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.249105Z", - "index": 2021031101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 708, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/03/05/708-tasha-liu-from-china-wisbolep-runner-up/", - "post_title": "708. Tasha Liu from China (WISBOLEP Runner-Up)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.242107Z", - "index": 2021030501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 707, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/03/01/707-2-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", - "post_title": "707. [2/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.234114Z", - "index": 2021030101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 706, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/02/27/706-1-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", - "post_title": "706. [1/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.226119Z", - "index": 2021022701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 705, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/02/24/705-kate-billington-returns-and-she-brought-cake/", - "post_title": "705. Kate Billington Returns (and she brought cake)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.218117Z", - "index": 2021022401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 704, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/02/11/704-the-rick-thompson-report-brexit-update-february-2021/", - "post_title": "704. The Rick Thompson Report: Brexit Update (February 2021)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.210124Z", - "index": 2021021101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 702, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/01/25/702-emergency-questions-with-james/", - "post_title": "702. Emergency Questions (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.132981Z", - "index": 2021012501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 701, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/01/19/701-legal-english-with-louise-kulbicki/", - "post_title": "701. Legal English with Louise Kulbicki", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.124988Z", - "index": 2021011901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 700, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/01/13/700-marooned-with-my-music-luke-thompson/", - "post_title": "700. Marooned With My Music: Luke Thompson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.117986Z", - "index": 2021011301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 699, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2021/01/07/699-welcome-back-to-lukes-english-podcast-faq-january-2021/", - "post_title": "699. Welcome (back) to Luke\u2019s English Podcast / FAQ (January 2021)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.109993Z", - "index": 2021010701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 698, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/12/23/698-paul-is-on-the-podcast-random-questions-with-paul-taylor/", - "post_title": "698. Paul is on the Podcast / Random Questions with Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.102995Z", - "index": 2020122301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 697, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/12/18/697-11-christmas-cracker-jokes-for-2020-explained/", - "post_title": "697. 11 Christmas Cracker Jokes for 2020, Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.094998Z", - "index": 2020121801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 696, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/12/16/696-wisbolep-competition-results-ramble/", - "post_title": "696. WISBOLEP Competition Results + RAMBLE", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.088000Z", - "index": 2020121601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 695, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/12/11/695-pronunciation-pragmatics-procrastination-with-emma/", - "post_title": "695. Pronunciation, Pragmatics & Procrastination with Emma", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.080003Z", - "index": 2020121101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 694, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/12/07/694-the-crown-the-royal-family-a-royal-ramble-with-my-wife/", - "post_title": "694. The Crown / The Royal Family (A Royal Ramble with My Wife)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.073005Z", - "index": 2020120701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 693, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/30/693-english-with-lucy-a-conversation-with-lucy-earl/", - "post_title": "693. English With Lucy / A Conversation with Lucy Earl", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.066004Z", - "index": 2020113001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 692, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/23/wisbolep/", - "post_title": "692. WISBOLEP Competition Entries \u2013 Listen & Vote!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.058011Z", - "index": 2020112301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 691, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/18/691-jerome-butler-dialect-coach/", - "post_title": "691. Jerome Butler \u2013 Dialect Coach", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.051008Z", - "index": 2020111801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 690, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/12/690-urban-vs-rural-living-abroad-cultural-differences-with-cara-leopold/", - "post_title": "690. Urban vs Rural / Living Abroad / Cultural Differences (with Cara Leopold)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.043015Z", - "index": 2020111201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 689, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/06/689-baking-cakes-telling-jokes-speaking-chinese-with-kate-billington/", - "post_title": "689. Baking Cakes, Telling Jokes & Speaking Chinese with Kate Billington", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.036017Z", - "index": 2020110601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 688, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/11/02/689-sean-connery/", - "post_title": "688. Sean Connery", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.028015Z", - "index": 2020110201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 687, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/10/29/687-wisbolep-problem-polite-requests-an-inspiring-email-fly-me-to-the-moon/", - "post_title": "687. WISBOLEP Problem / Polite Requests / An Inspiring Email / Fly Me To the Moon", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.020023Z", - "index": 2020102901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 686, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/10/27/686-christian-from-canguro-english/", - "post_title": "686. Christian from Canguro English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.012025Z", - "index": 2020102701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 685, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/10/21/685-raising-bilingual-children-1-alex-and-his-daughter-alice-in-moscow/", - "post_title": "685. Raising Bilingual Children [1] Alex and his daughter Alice, in Moscow", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:31.004028Z", - "index": 2020102101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 684, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/10/15/684-chasing-the-tangent-train-with-elspeth-graty/", - "post_title": "684. Chasing the Tangent Train with Elspeth Graty", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.997030Z", - "index": 2020101501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 683, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/10/09/683-feelgood-stories-of-flirting-with-marie-connolly/", - "post_title": "683. Feelgood Stories of Flirting with Marie Connolly", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.989032Z", - "index": 2020100901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 682, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/09/25/682-key-features-of-english-accents-explained/", - "post_title": "682. Key Features of English Accents, Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.982031Z", - "index": 2020092501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 681, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/09/16/681-new-competition-why-i-should-be-on-lep-wisbolep-story-the-first-time-i-said-fck/", - "post_title": "681. New Competition: Why I Should Be On LEP (WISBOLEP) / Story: The First Time I Said F*ck", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.974679Z", - "index": 2020091601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 680, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/09/09/680-park-life-a-year-in-the-wildlife-of-an-urban-park-by-rick-thompson-animal-collective-nouns/", - "post_title": "680. Park Life \u2013 A Year in The Wildlife Of An Urban Park (by Rick Thompson) / Animal Collective Nouns", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.966683Z", - "index": 2020090901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 679, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/09/04/679-gills-book-club-a-gentleman-in-moscow/", - "post_title": "679. Gill\u2019s Book Club: A Gentleman In Moscow", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.958691Z", - "index": 2020090401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 678, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/08/28/678-the-vintage-furniture-trade-in-london-with-howard-roach/", - "post_title": "678. The Vintage Furniture Trade in London (with Howard Roach)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.951692Z", - "index": 2020082801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 677, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/08/21/677-a-post-holiday-ramble-holiday-vocab-stories/", - "post_title": "677. A Post-Holiday Ramble / Holiday Vocab / Stories", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.943690Z", - "index": 2020082101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 676, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/08/01/676-david-crystal-lets-talk-how-english-conversation-works/", - "post_title": "676. David Crystal: Let\u2019s Talk \u2013 How English Conversation Works", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.936692Z", - "index": 2020080101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 675, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/07/24/675-an-unplanned-pre-holiday-ramble-july-2020/", - "post_title": "675. An Unplanned Pre-Holiday Ramble (July 2020)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.928695Z", - "index": 2020072401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 674, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/07/16/674-19-amusing-insurance-claims-car-crash-vocabulary/", - "post_title": "674. 19 Amusing Insurance Claims / Car Crash Vocabulary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.921697Z", - "index": 2020071601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 673, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/07/07/673-conspiracies-ufos-life-hacks-with-james/", - "post_title": "673. Conspiracies / UFOs / Life Hacks (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.913704Z", - "index": 2020070701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 672, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/07/03/672-the-rick-thompson-report-covid-brexit-blm-july-2020/", - "post_title": "672. The Rick Thompson Report: COVID / BREXIT / BLM (July 2020)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.906707Z", - "index": 2020070301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 671, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/30/671-aussie-english-with-pete-smissen/", - "post_title": "671. Aussie English with Pete Smissen", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.898705Z", - "index": 2020063001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 670, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/22/670-language-learning-with-james-harris/", - "post_title": "670. Language Learning with James Harris", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.891711Z", - "index": 2020062201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 669, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/18/669-how-to-learn-english/", - "post_title": "669. How to Learn English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.883710Z", - "index": 2020061801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 668, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/13/668-lep-live-ask-me-anything-hang-out-with-luke-audio-version/", - "post_title": "668. LEP LIVE! Ask Me Anything / Hang Out With Luke (AUDIO VERSION)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.876716Z", - "index": 2020061301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 667, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/08/667-four-way-call-with-alex-moz-paul/", - "post_title": "667. Four Way Call (with Alex, Moz & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.868719Z", - "index": 2020060801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/06/07/announcement-im-doing-a-youtube-live-stream-on-wednesday-10-june-at-3pm-cet/", - "post_title": "Announcement: I\u2019m doing a YouTube Live Stream on Wednesday 10 June at 3PM CET", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.860723Z", - "index": 2020060701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 666, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/29/666-part-3-favourite-scary-films-with-james/", - "post_title": "666. [Part 3] Favourite Scary Films (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.853719Z", - "index": 2020052901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 666, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/27/666-part-2-frightening-experiences-with-james/", - "post_title": "666. [Part 2] Frightening Experiences (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.844728Z", - "index": 2020052701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 666, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/25/666-part-1-the-number-of-the-beast-scary-music-black-sabbath-with-james/", - "post_title": "666. [Part 1] The Number of the Beast / Scary Music / Black Sabbath (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.837729Z", - "index": 2020052501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 665, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/20/665-a-chinwag-with-sebastian-marx-18-british-slang-phrases-that-americans-dont-understand/", - "post_title": "665. A Chinwag with Sebastian Marx / 18+ British slang phrases that Americans don\u2019t understand", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.829727Z", - "index": 2020052001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 664, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/15/664-lockdown-ramble-with-my-wife/", - "post_title": "664. Lockdown Ramble with My Wife", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.822734Z", - "index": 2020051501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 663, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/05/04/663-the-lockdown-lying-game-with-amber-paul/", - "post_title": "663. The Lockdown Lying Game with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.813737Z", - "index": 2020050401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 662, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/29/662-catching-up-with-amber-paul-10-surviving-lockdown-with-kids/", - "post_title": "662. Catching Up with Amber & Paul #10 (Surviving Lockdown with Kids)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.806739Z", - "index": 2020042901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 661, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/17/661-an-englishman-in-los-angeles-headhunted-by-netflix-divided-by-a-common-language-with-oli-thompson/", - "post_title": "661. An Englishman in Los Angeles (with Oli)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.799738Z", - "index": 2020041701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 660, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/14/660-using-tv-series-films-to-improve-your-english/", - "post_title": "660. Using TV Series & Films to Improve Your English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.791739Z", - "index": 2020041401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 659, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/11/659-lockdown-chat-with-cara-leopold/", - "post_title": "659. Lockdown Chat with Cara Leopold", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.784742Z", - "index": 2020041101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 658, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/08/658-2-2-why-do-brits-sing-with-american-accents/", - "post_title": "658. [2/2] Why do Brits sing with American accents?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.776744Z", - "index": 2020040801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 657, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/04/07/657-1-2-why-do-brits-sing-with-american-accents/", - "post_title": "657. [1/2] Why do Brits sing with American accents?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.769747Z", - "index": 2020040701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 656, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/31/656-british-comedy-karl-pilkingtons-monkey-news-the-ricky-gervais-show/", - "post_title": "656. British Comedy: Karl Pilkington\u2019s Monkey News / The Ricky Gervais Show", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.761749Z", - "index": 2020033101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 655, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/28/655-coping-with-isolation-describing-feelings-and-emotions-vocabulary-experiences/", - "post_title": "655. Coping with Isolation / Describing Feelings and Emotions \u2013 Vocabulary & Experiences", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.754751Z", - "index": 2020032801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 654, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/23/654-computer-based-ielts-stories-about-the-first-time-with-jessica-beck-from-ielts-energy-podcast/", - "post_title": "654. Computer-based IELTS / Stories about The First Time\u2026 (with Jessica Beck from IELTS Energy Podcast)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.746754Z", - "index": 2020032301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 653, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/20/653-gills-book-club-the-five-the-untold-lives-of-the-women-killed-by-jack-the-ripper-by-hallie-rubenhold/", - "post_title": "653. Gill\u2019s Book Club \u2013 \u201cThe Five: The Untold Lives of the Women Killed by Jack the Ripper\u201d by Hallie Rubenhold / How to read books to improve your English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.739757Z", - "index": 2020032001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 652, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/13/652-the-rick-thompson-report-coronavirus-covid-19/", - "post_title": "652. The Rick Thompson Report: Coronavirus (COVID-19)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.730760Z", - "index": 2020031302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 651, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/13/651-coronavirus-covid-19-vocabulary/", - "post_title": "651. Coronavirus (COVID-19) Vocabulary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.723762Z", - "index": 2020031301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 650, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/10/650-british-music-jungle-with-james/", - "post_title": "650. British Music: Jungle (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.716769Z", - "index": 2020031001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 649, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/03/05/649-an-unedited-ramble-march-2020-never-explain-never-apologise-no-stress-method-to-the-madness-3-songs-on-guitar/", - "post_title": "649. An Unedited Ramble (March 2020) Never Explain, Never Apologise? / No Stress / Method To The Madness / 3 Songs on Guitar", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.707772Z", - "index": 2020030501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 648, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/24/648-ian-moore-returns/", - "post_title": "648. Ian Moore Returns", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.700775Z", - "index": 2020022401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 647, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/21/647-british-comedy-alan-partridge-part-6/", - "post_title": "647. British Comedy: Alan Partridge (Part 6)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.692777Z", - "index": 2020022101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 646, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/20/646-british-comedy-alan-partridge-part-5/", - "post_title": "646. British Comedy: Alan Partridge (Part 5)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.685779Z", - "index": 2020022001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 645, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/17/645-british-comedy-alan-partridge-part-4/", - "post_title": "645. British Comedy: Alan Partridge (Part 4)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.677782Z", - "index": 2020021701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 644, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/14/644-the-rick-thompson-report-is-brexit-done/", - "post_title": "644. The Rick Thompson Report: Is Brexit Done?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.670784Z", - "index": 2020021401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 643, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/11/643-the-intercultural-communication-dance-with-sherwood-fleming/", - "post_title": "643. The Intercultural Communication Dance with Sherwood Fleming", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.662786Z", - "index": 2020021101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 642, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/06/642-the-lying-game-returns-with-amber-paul/", - "post_title": "642. The Lying Game Returns (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.655789Z", - "index": 2020020601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 641, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/02/02/641-catching-up-with-amber-paul-9/", - "post_title": "641. Catching Up with Amber & Paul #9", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.647791Z", - "index": 2020020201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 640, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/28/640-ielts-speaking-success-with-keith-ohare/", - "post_title": "640. IELTS Speaking Success with Keith O\u2019Hare", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.640794Z", - "index": 2020012801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 639, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/23/639-3-quintessentially-british-books-that-you-might-not-know-about-with-mum/", - "post_title": "639. 3 Quintessentially British Books (that you might not know about) with Mum", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.632792Z", - "index": 2020012301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 638, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/19/638-3-quintessentially-british-things-that-you-might-not-know-about-with-dad/", - "post_title": "638. 3 Quintessentially British Things (that you might not know about) with Dad", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.624799Z", - "index": 2020011901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 637, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/14/637-5-quintessentially-english-things-that-you-might-not-know-about-with-james/", - "post_title": "637. 5 Quintessentially English Things (that you might not know about) with James", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.617797Z", - "index": 2020011401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 636, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/10/636-james-luke-discuss-star-wars-ix-spoilers-final-star-wars-episode-ever/", - "post_title": "636. James & Luke Discuss Star Wars IX (SPOILERS) Final Star Wars Episode Ever?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.609804Z", - "index": 2020011001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 635, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/08/635-a-new-year-ramble-for-2020-part-2-motivation-new-years-rules-bilingual-daughter-neil-innes/", - "post_title": "635. A New Year Ramble for 2020 (Part 2) Motivation / New Year\u2019s Rules / Bilingual Daughter / Neil Innes", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.602806Z", - "index": 2020010801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 634, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2020/01/06/634-a-new-year-ramble-for-2020-part-1/", - "post_title": "634. A New Year Ramble for 2020 (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.594809Z", - "index": 2020010601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 633, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/12/18/633-star-wars-ix-the-rise-of-skywalker-spoiler-review/", - "post_title": "633. Star Wars IX: The Rise of Skywalker (SPOILER REVIEW)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.587807Z", - "index": 2019121801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 632, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/12/17/632-star-wars-ix-the-rise-of-skywalker-no-spoilers/", - "post_title": "632. Star Wars IX: The Rise of Skywalker (No Spoilers!)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.579814Z", - "index": 2019121701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 631, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/12/16/631-29-awful-christmas-jokes-explained/", - "post_title": "631. 29 Awful Christmas Jokes, Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.571817Z", - "index": 2019121601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 630, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/12/09/630-the-english-guy-with-a-sitcom-on-japanese-tv-with-bj-fox/", - "post_title": "630. The English Guy with a Sitcom on Japanese TV (with BJ Fox)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.563820Z", - "index": 2019120901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 629, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/12/02/629-do-you-ever-with-james-strange-habits-funny-observations/", - "post_title": "629. Do you ever \u2026 ? (with James) Strange Habits & Funny Observations", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.556821Z", - "index": 2019120201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 628, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/11/26/628-oasis-with-james/", - "post_title": "628. OASIS (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.547820Z", - "index": 2019112601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 627, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/11/19/627-eminas-long-journey-to-english-proficiency/", - "post_title": "627. Emina\u2019s Long Journey to English Proficiency", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.539822Z", - "index": 2019111901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 626, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/11/13/626-the-rick-thompson-report-boris-johnsons-brexit-deal-general-election-football/", - "post_title": "626. The Rick Thompson Report: Boris Johnson\u2019s Brexit Deal / General Election / Football", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.529830Z", - "index": 2019111302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 625, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/11/13/625-88-english-expressions-that-will-confuse-everyone-part-2/", - "post_title": "625. 88 English expressions that will confuse everyone (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.522833Z", - "index": 2019111301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 624, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/11/07/624-88-english-expressions-that-will-confuse-everyone-part-1/", - "post_title": "624. 88 English expressions that will confuse everyone (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.514836Z", - "index": 2019110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 623, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/10/29/623-13-terrible-jokes-explained/", - "post_title": "623. 13 Terrible Jokes, Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.507837Z", - "index": 2019102901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 622, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/10/22/422-general-ramble-oct-2019-learning-english-politics-recording-setup-book-recommendation-beatles-star-wars-bill-bailey/", - "post_title": "622. General Ramble (Oct 2019) Learning English / Politics / Recording Setup / Book Recommendation / Beatles / Star Wars / Bill Bailey", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.500841Z", - "index": 2019102201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 621, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/10/14/621-british-tv-dragons-den-part-3-discord-in-the-den/", - "post_title": "621. British TV: Dragons\u2019 Den (Part 3) Discord in the Den", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.492842Z", - "index": 2019101401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 620, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/10/11/620-british-tv-dragons-den-part-2-negotiation/", - "post_title": "620. British TV: Dragons\u2019 Den (Part 2) Negotiation", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.485844Z", - "index": 2019101101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 619, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/10/09/619-british-tv-dragons-den-part-1-vocabulary/", - "post_title": "619. British TV: Dragons\u2019 Den (Part 1) Vocabulary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.477847Z", - "index": 2019100901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 618, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/30/618-the-climate-crisis-explained-in-10-charts-with-cara-leopold/", - "post_title": "618. The Climate Crisis Explained in 10 Charts (with Cara Leopold)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.469850Z", - "index": 2019093001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 617, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/26/617-sales-and-advertising-with-paul-taylor/", - "post_title": "617. Sales and Advertising (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.461852Z", - "index": 2019092601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 616, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/23/616-can-you-find-the-15-idioms-with-paul-taylor/", - "post_title": "616. Can you find the 15 idioms? (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.454856Z", - "index": 2019092301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 615, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/17/615-paul-taylor-became-a-dad-and-you-wont-believe-what-happened-next/", - "post_title": "615. Paul Taylor Became a Dad, and you won\u2019t believe what happened next", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.446858Z", - "index": 2019091701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 614, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/13/614-another-murder-mystery-detective-story-part-3/", - "post_title": "614. Another Murder Mystery Detective Story (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.439860Z", - "index": 2019091301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 613, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/09/613-another-murder-mystery-detective-story-part-2/", - "post_title": "613. Another Murder Mystery Detective Story (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.430858Z", - "index": 2019090901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 612, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/06/612-another-murder-mystery-detective-story-part-1/", - "post_title": "612. Another Murder Mystery Detective Story (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.422860Z", - "index": 2019090601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 611, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/09/03/611-top-10-jokes-from-edinburgh-fringe-2019/", - "post_title": "611. Top 10 Jokes from Edinburgh Fringe 2019", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.415864Z", - "index": 2019090301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 610, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/08/30/610-british-comedy-james-acaster/", - "post_title": "610. British Comedy: James Acaster", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.407870Z", - "index": 2019083001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 609, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/08/28/609-the-lep-meetup-in-london-brexit-talking-to-my-daughter/", - "post_title": "609. The LEP MeetUp in London / Brexit / Talking to my Daughter", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.400873Z", - "index": 2019082801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 608, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/08/21/608-the-mass-observation-with-mum/", - "post_title": "608. The Mass Observation (with Mum)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.392875Z", - "index": 2019082101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 607, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/08/09/607-the-rick-thompson-report-boris-johnson-pm-no-deal-brexit/", - "post_title": "607. The Rick Thompson Report: Boris Johnson PM / No Deal Brexit?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.384874Z", - "index": 2019080901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 606, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/07/25/606-the-english-seaside-with-james/", - "post_title": "606. The English Seaside (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.376880Z", - "index": 2019072501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 605, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/07/18/605-unexpected-road-trip-with-james/", - "post_title": "605. Unexpected Road Trip (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.369878Z", - "index": 2019071801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 604, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/07/05/604-london-native-speaker-interviews-revisited-part-2/", - "post_title": "604. London Native Speaker Interviews REVISITED Part 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.360881Z", - "index": 2019070501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 603, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/07/01/603-queen-freddie-mercury-bohemian-rhapsody/", - "post_title": "603. Queen / Freddie Mercury / Bohemian Rhapsody", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.353889Z", - "index": 2019070101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 602, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/06/27/602-british-comedy-the-day-today-part-2/", - "post_title": "602. British Comedy: The Day Today (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.344891Z", - "index": 2019062701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 601, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/06/24/601-british-comedy-the-day-today-part-1/", - "post_title": "601. British Comedy: The Day Today (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.337893Z", - "index": 2019062401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/06/18/quick-hello-opp-living-through-comedy-somewhere-else-dreamin/", - "post_title": "Quick Hello / OPP / Living Through Comedy / Somewhere Else Dreamin\u2019", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.329896Z", - "index": 2019061801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 600, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/06/08/600-episode-600-youtube-livestream-ask-me-anything/", - "post_title": "600. Episode 600 YouTube Livestream \u2013 Ask Me Anything", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.322894Z", - "index": 2019060801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 599, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/06/03/599-oliver-gee-returns-with-stories-to-tell/", - "post_title": "599. Oliver Gee Returns with Stories to Tell", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.314901Z", - "index": 2019060301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 598, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/28/598-the-rick-thompson-report-eu-elections-theresa-may-brexit-football/", - "post_title": "598. The Rick Thompson Report: EU Elections / Theresa May / Brexit / Football", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.307903Z", - "index": 2019052801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/27/hello-here-are-the-details-of-the-episode-600-youtube-live-stream/", - "post_title": "Hello! Here are the details of the Episode 600 YouTube live stream", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.299906Z", - "index": 2019052701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 597, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/23/597-growing-up-getting-older-becoming-a-father-with-paul-taylor/", - "post_title": "597. Growing Up / Getting Older / Becoming a Father (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.292910Z", - "index": 2019052301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 596, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/20/596-sleep-with-amber-paul/", - "post_title": "596. SLEEP with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.284906Z", - "index": 2019052001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 595, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/15/595-andy-johnson-returns-part-2-eating-tv-series-football-music/", - "post_title": "595. Andy Johnson Returns (Part 2) Eating / TV Series / Football / Music", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.276914Z", - "index": 2019051501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 594, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/13/594-andy-johnson-returns-part-1-moving-house-london-vs-canterbury-english-teaching/", - "post_title": "594. Andy Johnson Returns (Part 1) Moving House / London vs Canterbury / English Teaching", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.269915Z", - "index": 2019051301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 593, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/10/593-going-through-pages-in-an-old-diary/", - "post_title": "593. Going through pages in an old diary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.261918Z", - "index": 2019051001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 592, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/05/07/592-it-always-seems-impossible-until-its-done/", - "post_title": "592. It always seems impossible until it\u2019s done", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.253921Z", - "index": 2019050701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 591, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/29/591-london-native-speaker-interviews-revisited-part-1/", - "post_title": "591. London Native Speaker Interviews REVISITED (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.245924Z", - "index": 2019042901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 590, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/24/590-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", - "post_title": "590. [2/2] Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.238926Z", - "index": 2019042401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 589, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/23/589-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", - "post_title": "589. Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.230928Z", - "index": 2019042301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 588, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/19/588-punctuation-rules-book-review-part-2-apostrophe-full-stop-comma/", - "post_title": "588. Punctuation Rules / Book Review (Part 2) Apostrophe, Full Stop, Comma", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.223930Z", - "index": 2019041901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 587, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/18/587-punctuation-rules-book-review-part-1/", - "post_title": "587. Punctuation Rules / Book Review (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.215929Z", - "index": 2019041801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/12/its-leps-10th-birthday/", - "post_title": "It\u2019s LEP\u2019s 10th Birthday!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.207931Z", - "index": 2019041201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 586, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/04/06/586-the-importance-of-listening/", - "post_title": "586. The Importance of Listening", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.200938Z", - "index": 2019040601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 585, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/29/585-alternative-british-citizenship-tests-with-paul-taylor/", - "post_title": "585. Alternative British Citizenship Tests with Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.192936Z", - "index": 2019032901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 584, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/25/584-posh-or-not-posh-part-3-with-amber-paul/", - "post_title": "584. Posh or not posh? (Part 3) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.185938Z", - "index": 2019032501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 583, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/20/583-british-comedy-the-dirty-fork-restaurant-sketch-monty-python/", - "post_title": "583. British Comedy: The Dirty Fork / Restaurant Sketch (Monty Python)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.177945Z", - "index": 2019032001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 582, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/15/582-posh-or-not-posh-part-2-guess-the-posh-british-celebrities/", - "post_title": "582. Posh or not posh? (Part 2) Guess the Posh British Celebrities", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.170950Z", - "index": 2019031501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 581, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/13/581-posh-or-not-posh-part-1-understanding-posh-people-and-posh-accents/", - "post_title": "581. Posh or not posh? (Part 1) Understanding Posh People and Posh Accents", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.162952Z", - "index": 2019031301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 580, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/08/580-ramble-listener-comments-robots-vampires-two-taps-in-the-bathroom/", - "post_title": "580. Ramble / Listener Comments / Robots / Vampires / Two Taps in the Bathroom", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.155955Z", - "index": 2019030801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 579, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/03/01/579-2-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", - "post_title": "579. [2/2] IELTS Q&A with Ben Worthington from IELTS Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.146958Z", - "index": 2019030101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 578, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/02/28/578-1-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", - "post_title": "578. [1/2] IELTS Q&A with Ben Worthington from IELTS Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.139960Z", - "index": 2019022801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 577, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/02/14/577-uk-vs-us-slang-game-with-jennifer-from-english-across-the-pond/", - "post_title": "577. UK vs US Slang Game (with Jennifer from English Across the Pond)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.131956Z", - "index": 2019021401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/02/05/website-post-i-was-on-the-rock-roll-english-podcast-again-new-premium-episodes-coming-throughout-february/", - "post_title": "[Website post] I was on the Rock & Roll English Podcast again / New Premium episodes coming throughout February", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.124963Z", - "index": 2019020501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 576, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/02/02/576-talking-about-comedy-books-films-music-with-james/", - "post_title": "576. Talking about Comedy, Books, Films & Music with James", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.116966Z", - "index": 2019020201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 575, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/30/575-british-comedy-paul-chowdhry/", - "post_title": "575. British Comedy: Paul Chowdhry", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.109963Z", - "index": 2019013001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 574, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/25/574-2-2-the-rick-thompson-report-brexit-qa-january-2019/", - "post_title": "574. [2/2] The Rick Thompson Report: Brexit Q&A (January 2019)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.101966Z", - "index": 2019012502, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 573, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/25/573-1-2-the-rick-thompson-report-brexit-update-january-2019/", - "post_title": "573. [1/2] The Rick Thompson Report: Brexit Update (January 2019)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.093973Z", - "index": 2019012501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 572, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/20/572-worst-stand-up-gig-experiences-with-amber-paul/", - "post_title": "572. Worst Stand-up Gig Experiences (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.086975Z", - "index": 2019012001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 571, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/16/571-bill-burrs-hilarious-plane-story-enjoy-comedy-storytelling-in-english/", - "post_title": "571. Bill Burr\u2019s Hilarious Plane Story \u2013 Enjoy Comedy/Storytelling in English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.078978Z", - "index": 2019011601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 570, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/11/570-learning-teaching-english-with-zdenek-lukas-part-2/", - "post_title": "570. Learning & Teaching English with Zdenek Lukas (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.071980Z", - "index": 2019011102, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 569, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/11/569-learning-teaching-english-with-zdenek-lukas-part-1/", - "post_title": "569. Learning & Teaching English with Zdenek Lukas (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.063983Z", - "index": 2019011101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 568, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2019/01/07/568-what-is-lukes-english-podcast-and-how-can-it-help-you-with-your-english/", - "post_title": "568. What is Luke\u2019s English Podcast, and how can it help you with your English?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.055985Z", - "index": 2019010701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 567, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/21/567-alternative-christmas-stories-poems-beatles-happy-new-year-from-lep/", - "post_title": "567. Alternative Christmas Stories & Poems / Beatles / Happy New Year from LEP!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.047988Z", - "index": 2018122101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 566, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/19/566-the-collins-words-of-the-year-part-6-2018-with-amber-minogue/", - "post_title": "566. The Collins Words of the Year (Part 6) 2018 with Amber Minogue", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.040991Z", - "index": 2018121901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 565, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/17/565-the-collins-words-of-the-year-part-5-2018-with-amber-minogue/", - "post_title": "565. The Collins Words of the Year (Part 5) 2018 with Amber Minogue", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.033988Z", - "index": 2018121701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 564, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/13/564-the-collins-words-of-the-year-part-4/", - "post_title": "564. The Collins Words of the Year (Part 4)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.025990Z", - "index": 2018121301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 563, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/11/563-the-collins-words-of-the-year-part-3/", - "post_title": "563. The Collins Words of the Year (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.018994Z", - "index": 2018121101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 562, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/10/562-the-collins-words-of-the-year-part-2/", - "post_title": "562. The Collins Words of the Year (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.010996Z", - "index": 2018121001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 561, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/07/561-the-collins-words-of-the-year-part-1/", - "post_title": "561. The Collins Words of the Year (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:30.002998Z", - "index": 2018120701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 560, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/12/03/560-sarah-donnelly-returns-writing-jokes-public-speaking-doing-comedy-in-another-language/", - "post_title": "560. Sarah Donnelly Returns \u2013 Writing jokes, public speaking, doing comedy in another language", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.996000Z", - "index": 2018120301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 559, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/11/20/559-the-rick-thompson-report-brexit-chaos-november-2018/", - "post_title": "559. The Rick Thompson Report: Brexit Chaos (November 2018)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.988003Z", - "index": 2018112001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 558, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/11/15/558-rambling-in-the-new-sky-pod/", - "post_title": "558. Rambling in the new Sky-Pod", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.980006Z", - "index": 2018111501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/11/09/a-letter-from-luke-9-nov-2018/", - "post_title": "A Letter from Luke \u2013 9 Nov. 2018", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.973063Z", - "index": 2018110901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 557, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/29/557-im-a-rambling-guy-monologue-autumn-2018/", - "post_title": "557. I\u2019m a Rambling Guy (Monologue \u2013 Autumn 2018)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.965067Z", - "index": 2018102901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 556, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/24/556-with-jessica-beck-from-honestly-english/", - "post_title": "556. With Jessica Beck from Honestly English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.958068Z", - "index": 2018102401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 555, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/22/555-raphael-millers-summer-school-report/", - "post_title": "555. Raphael Miller\u2019s Summer School Report", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.950067Z", - "index": 2018102201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 554, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/18/554-odd-news-stories-with-mum-dad/", - "post_title": "554. ODD NEWS STORIES (with Mum & Dad)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.942073Z", - "index": 2018101801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 553, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/15/553-fighting-wildland-fires-with-benny-the-russian-firefighter/", - "post_title": "553. Fighting Wildland Fires with Benny the Russian Firefighter", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.935076Z", - "index": 2018101501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 552, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/05/552-discussing-comedy-culture-with-amber-paul/", - "post_title": "552. Discussing Comedy & Culture (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.927078Z", - "index": 2018100501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 551, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/10/01/551-catching-up-with-amber-paul-8-stereotypes/", - "post_title": "551. Catching Up with Amber & Paul #8 \u2013 Stereotypes", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.920082Z", - "index": 2018100101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 550, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/28/550-british-comedy-alan-partridge-part-3/", - "post_title": "550. British Comedy: Alan Partridge (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.912078Z", - "index": 2018092801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 549, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/26/549-british-comedy-alan-partridge-part-2/", - "post_title": "549. British Comedy: Alan Partridge (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.905081Z", - "index": 2018092601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 548, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/25/548-british-comedy-alan-partridge-part-1/", - "post_title": "548. British Comedy: Alan Partridge (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.896088Z", - "index": 2018092501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 547, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/19/547-best-jokes-from-the-edinburgh-festival-fringe/", - "post_title": "547. Best Jokes from the Edinburgh Festival Fringe", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.889091Z", - "index": 2018091901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 546, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/11/546-death-by-meteor/", - "post_title": "546. Death by Meteor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.881094Z", - "index": 2018091101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 545, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/09/07/545-the-hitchhiker-by-roald-dahl-short-story/", - "post_title": "545. The Hitchhiker by Roald Dahl (Short Story)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.874091Z", - "index": 2018090701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 544, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/08/27/544-the-rick-thompson-report-no-deal-brexit/", - "post_title": "544. The Rick Thompson Report: No Deal Brexit", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.866095Z", - "index": 2018082701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 543, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/08/23/543-britains-first-insect-restaurant-opens/", - "post_title": "543. Britain\u2019s First Insect Restaurant Opens", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.858102Z", - "index": 2018082301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 542, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/08/21/542-talking-rubbish-just-having-fun-with-the-thompsons/", - "post_title": "542. Talking Rubbish & Just Having Fun with The Thompsons", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.850104Z", - "index": 2018082101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 541, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/07/31/541-what-british-people-say-vs-what-they-mean/", - "post_title": "541. What British People Say vs What They Mean", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.842107Z", - "index": 2018073101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 540, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/07/21/540-whats-up-post-world-cup-news-lep-meetup-london-super-mario-earworms/", - "post_title": "540. What\u2019s Up? Post World Cup / News / LEP Meetup London / Super Mario Earworms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.834109Z", - "index": 2018072101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 539, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/07/09/539-world-cup-2018-3-is-it-coming-home/", - "post_title": "539. World Cup 2018 [3] Is It Coming Home?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.826112Z", - "index": 2018070901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 538, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/07/05/538-world-cup-2018-2-the-second-round-listener-comments/", - "post_title": "538. World Cup 2018 [2] The Second Round / Listener Comments", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.819110Z", - "index": 2018070501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 537, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/07/02/537-how-olly-richards-learns-a-language-part-2-intermediate-plateau-the-magic-of-story-pronunciation-personality-classroom-vs-self-guided-learning/", - "post_title": "537. How Olly Richards Learns a Language (Part 2) Intermediate Plateau / The Magic of Story / Pronunciation & Personality / Classroom vs Self-Guided Learning", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.811111Z", - "index": 2018070201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 536, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/29/536-how-olly-richards-learns-a-language-part-1-compelling-material-input-based-learning/", - "post_title": "536. How Olly Richards Learns a Language (Part 1) Compelling Material / Input-based Learning", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.804114Z", - "index": 2018062901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 535, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/26/535-world-cup-2018-1/", - "post_title": "535. World Cup 2018 [1]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.796116Z", - "index": 2018062601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/22/lep-premium-is-now-live-teacherluke-co-uk-premium/", - "post_title": "LEP PREMIUM is now live \u2013 teacherluke.co.uk/premium", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.789119Z", - "index": 2018062201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 534, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/15/534-sugar-sammy-interview-part-2-language-comedy/", - "post_title": "534. Sugar Sammy Interview (Part 2) Language & Comedy", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.781122Z", - "index": 2018061501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 533, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/13/533-sugar-sammy-interview-part-1-multilingual-comedian/", - "post_title": "533. Sugar Sammy Interview (Part 1) Multilingual Comedian", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.774129Z", - "index": 2018061301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 532, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/08/532-a-history-of-the-world-cup/", - "post_title": "532. A History of The World Cup", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.766128Z", - "index": 2018060801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 531, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/06/531-crime-vocabulary-quiz-with-moz/", - "post_title": "531. Crime Vocabulary Quiz (with Moz)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.758129Z", - "index": 2018060601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 530, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/06/03/530-more-murder-stories-with-moz/", - "post_title": "530. More Murder Stories (with Moz)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.751132Z", - "index": 2018060301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 529, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/29/529-the-m-word-with-andy-johnson/", - "post_title": "529. The \u201cM\u201d Word (with Andy Johnson)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.743134Z", - "index": 2018052901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 528, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/23/528-the-royal-wedding-with-mum/", - "post_title": "528. The Royal Wedding (with Mum)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.736137Z", - "index": 2018052301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 527, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/18/527-can-paul-taylor-pass-the-uk-citizenship-test/", - "post_title": "527. Can Paul Taylor Pass The UK Citizenship Test?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.728140Z", - "index": 2018051801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 526, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/15/526-being-a-tourist-with-paul-taylor/", - "post_title": "526. Being a Tourist (with Paul Taylor) + Video", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.720142Z", - "index": 2018051501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/14/31807/", - "post_title": "Please VOTE for LEP in the British Podcast Awards 2018 \u2013 Voting Ends on Thursday 17 May", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.712150Z", - "index": 2018051401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 525, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/08/525-ninja-august-podcast-corrections-useful-japanese-cat-listener-comments-questions/", - "post_title": "525. Ninja August / Podcast Corrections / Useful Japanese Cat (Listener Comments & Questions)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.705151Z", - "index": 2018050801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 524, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/05/04/524-tricky-pronunciation-debates-either-neither-grammar-nazi-sketch/", - "post_title": "524. Tricky Pronunciation Debates / \u201cEither\u201d \u201cNeither\u201d / Song + Comedy Sketch", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.697154Z", - "index": 2018050401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 523, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/04/24/523-tips-for-learning-english-with-films-tv-shows-with-cara-leopold/", - "post_title": "523. Tips for Learning English with Films & TV Shows (with Cara Leopold)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.690156Z", - "index": 2018042401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 522, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/", - "post_title": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.682155Z", - "index": 2018041801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 521, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/04/13/520-talking-about-pets-with-james/", - "post_title": "521. Talking about Pets (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.675161Z", - "index": 2018041301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 520, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/04/03/520-idioms-game-chat-part-2-with-andy-johnson-18-more-idioms-vocab-items-explained/", - "post_title": "520. Idioms Game & Chat Part 2 (with Andy Johnson) + 18 More Idioms & Vocab Items Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.667159Z", - "index": 2018040301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 519, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/29/519-idioms-game-chat-with-andy-johnson-25-idioms-explained/", - "post_title": "519. Idioms Game & Chat (with Andy Johnson) + 25 Idioms Explained", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.659162Z", - "index": 2018032901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 518, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/21/518-grammar-questions-part-1-present-perfect-continuous-future-continuous-language-of-newspaper-headlines/", - "post_title": "518. Grammar Questions (Part 1) Present Perfect Continuous / Future Continuous / Language of Newspaper Headlines", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.652164Z", - "index": 2018032101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 517, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/14/517-professor-stephen-hawking/", - "post_title": "517. Professor Stephen Hawking (An Obituary)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.644166Z", - "index": 2018031401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 516, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/10/516-paul-mccartneys-spider-story/", - "post_title": "516. Paul McCartney\u2019s Spider Story", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.637168Z", - "index": 2018031001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 515, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/06/515-becoming-maman-with-amber-sarah-bringing-up-children-the-french-way/", - "post_title": "515. Becoming \u201cMaman\u201d with Amber & Sarah \u2013 Bringing Up Children The French Way", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.629171Z", - "index": 2018030601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 514, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/03/01/514-whats-on-the-table-with-fred-alex/", - "post_title": "514. What\u2019s on the table? (with Fred & Alex)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.622173Z", - "index": 2018030101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 513, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/23/513-general-ramble-news-comments/", - "post_title": "513. General Ramble / News / Comments", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.614177Z", - "index": 2018022301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/21/website-only-i-was-on-the-becoming-maman-podcast-with-amber-minogue-sarah-donnelly/", - "post_title": "[Website-only] I was on the \u201cBecoming Maman\u201d podcast with Amber Minogue & Sarah Donnelly", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.606179Z", - "index": 2018022101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 512, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/16/512-my-experiences-of-not-learning-french-part-2-learning-language-in-a-classroom-vs-learning-on-your-own/", - "post_title": "512. My Experiences of (not) Learning French [Part 2] Learning Language in a Classroom vs Learning On Your Own", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.598182Z", - "index": 2018021601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 511, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/13/511-my-experiences-of-not-learning-french-part-1/", - "post_title": "511. My Experiences of (not) Learning French [Part 1]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.591183Z", - "index": 2018021301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 510, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/05/510-philosophy-quiz-with-amber-paul/", - "post_title": "510. Philosophy Quiz (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.584186Z", - "index": 2018020501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 509, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/02/01/509-whats-it-all-about-philosophy-and-language-learning/", - "post_title": "509. What\u2019s it all about? (Philosophy and Language Learning)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.575189Z", - "index": 2018020101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 508, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/27/508-six-true-crime-stories-from-victorian-england-told-by-my-dad/", - "post_title": "508. Six True Crime Stories from Victorian England, Told by My Dad", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.568191Z", - "index": 2018012701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 507, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/21/british-comedy-tv-shows-to-learn-english-some-british-comedy-tv-show-recommendations/", - "post_title": "507. Learning English with UK Comedy TV Shows", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.559195Z", - "index": 2018012101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 506, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/15/506-one-of-britains-favourite-poems/", - "post_title": "506. One of Britain\u2019s Favourite Poems", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.551197Z", - "index": 2018011501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 505, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/12/505-a-chat-with-dad-james-about-star-wars-the-last-jedi-with-vocabulary/", - "post_title": "505. A Chat with Dad & James about Star Wars: The Last Jedi (with Vocabulary)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.542200Z", - "index": 2018011201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 504, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/11/504-my-review-of-star-wars-the-last-jedi-part-2/", - "post_title": "504. My Review of Star Wars: The Last Jedi (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.532204Z", - "index": 2018011101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 503, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/10/503-my-review-of-star-wars-the-last-jedi-part-1/", - "post_title": "503. My Review of Star Wars: The Last Jedi (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.524212Z", - "index": 2018011001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 502, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2018/01/03/502-the-birth-of-my-daughter/", - "post_title": "502. The Birth of My Daughter", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.517209Z", - "index": 2018010301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 501, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/24/501-merry-christmas-listener-correspondence/", - "post_title": "501. Merry Christmas! / Listener Correspondence", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.508218Z", - "index": 2017122401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/22/observations-on-the-paris-metro-from-inside-the-metro-listen-to-my-appearance-on-oliver-gees-podcast-the-earful-tower/", - "post_title": "Observations on the Paris Metro\u2026 from Inside the Metro (Listen to my appearance on Oliver Gee\u2019s podcast \u201cThe Earful Tower\u201d)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.501213Z", - "index": 2017122201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 500, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/17/500-12-episode-500-celebration-part-1/", - "post_title": "500. EPISODE 500 CELEBRATION! (PARTS 1 & 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.493221Z", - "index": 2017121701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 499, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/11/499-prince-harry-meghan-markle-royal-family-quiz-with-amber/", - "post_title": "499. Prince Harry & Meghan Markle / Royal Family Quiz (with Amber)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.486219Z", - "index": 2017121101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 498, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/08/498-the-rick-thompson-report-brexit-negotiations/", - "post_title": "498. The Rick Thompson Report: Brexit Negotiations", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.476223Z", - "index": 2017120801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 497, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/12/04/497-film-club-withnail-i-with-james-and-will/", - "post_title": "497. Film Club: Withnail & I (with James and Will)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.469229Z", - "index": 2017120401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 496, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/29/496-ramblecast/", - "post_title": "496. RAMBLECAST", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.461232Z", - "index": 2017112901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 495, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/26/495-australian-stereotypes-and-cliches-with-oliver-gee-didgeridoo-sounds/", - "post_title": "495. Australian Stereotypes and Cliches (with Oliver Gee) ~didgeridoo sounds~", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.453234Z", - "index": 2017112601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 494, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/21/494-who-wants-to-be-good-at-english-the-rematch-with-rick-thompson/", - "post_title": "494. Who Wants to be Good at English? (The Rematch) with Rick Thompson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.445232Z", - "index": 2017112101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 493, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/17/493-catching-up-with-amber-paul-7-human-pollution/", - "post_title": "493. Catching Up with Amber & Paul #7 (Human Pollution)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.438240Z", - "index": 2017111701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 492, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/12/492-becoming-a-dad-with-andy-ben-part-2/", - "post_title": "492. Becoming a Dad (with Andy & Ben) Part 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.430243Z", - "index": 2017111201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 491, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/08/491-becoming-a-dad-with-andy-ben-part-1/", - "post_title": "491. Becoming a Dad (with Andy & Ben) Part 1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.423243Z", - "index": 2017110801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 490, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/11/03/490-discussing-friendship-with-martin-and-dan-the-man-from-rock-n-roll-english-friendship-phrasal-verbs/", - "post_title": "490. Discussing Friendship \u2013 with Martin and Dan The Man from Rock n\u2019 Roll English (Friendship Phrasal Verbs)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.416247Z", - "index": 2017110301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 489, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/30/489-a-rambling-conversation-with-mum-part-2-vocabulary/", - "post_title": "489. A Rambling Conversation with Mum (Part 2) + Vocabulary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.408244Z", - "index": 2017103001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 488, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/26/488-a-rambling-conversation-with-mum-part-1-vocabulary/", - "post_title": "488. A Rambling Conversation with Mum (Part 1) + Vocabulary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.401251Z", - "index": 2017102601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 487, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/22/487-learning-languages-and-adapting-to-new-cultures-with-ethan-from-reallife-english/", - "post_title": "487. Learning Languages and Adapting to New Cultures (with Ethan from RealLife English)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.393253Z", - "index": 2017102201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 485, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/13/difficult-words-to-pronounce-in-english-with-paul-taylor/", - "post_title": "485. & 486. Difficult Words to Pronounce in English (with Paul Taylor) (Parts 1 & 2) + video", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.386256Z", - "index": 2017101301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 484, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/08/484-try-not-to-laugh-on-the-bus-with-paul-taylor/", - "post_title": "484. Try not to Laugh on the Bus (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.378259Z", - "index": 2017100801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/04/the-flat-earth-podcast-and-this-is-what-happened/", - "post_title": "I was invited onto The Flat Earth Podcast, and this is what happened\u2026 [Website only]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.371261Z", - "index": 2017100401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 483, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/10/01/483-a-rambling-chat-with-moz/", - "post_title": "483. A Rambling Chat with Moz", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.362263Z", - "index": 2017100101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 482, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/26/482-the-murder-mile-true-crime-podcast-with-moz-more-creepy-stories-of-murders-in-london/", - "post_title": "482. The Murder Mile True Crime Podcast (with Moz) More Creepy Stories of Murders in London", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.354262Z", - "index": 2017092601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/24/website-content-luke-on-the-real-life-english-podcast/", - "post_title": "[Website content] Luke on the RealLife English Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.346265Z", - "index": 2017092401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 481, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/20/481-holiday-diary-final-part-endeavour-to-persevere/", - "post_title": "481. Holiday Diary (Final Part) \u201cEndeavour to Persevere\u201d", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.338272Z", - "index": 2017092001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 480, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/18/480-holiday-diary-part-7-big-rocks/", - "post_title": "480. Holiday Diary (Part 7) BIG ROCKS!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.331274Z", - "index": 2017091801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 479, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/15/479-holiday-diary-part-6-the-madness-of-las-vegas-11-gambling-idioms/", - "post_title": "479. Holiday Diary (Part 6) The Madness of Las Vegas / 11 Gambling Idioms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.323277Z", - "index": 2017091501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 478, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/12/478-holiday-diary-part-5-an-encounter-with-the-church-of-scientology/", - "post_title": "478. Holiday Diary (Part 5) An Encounter with The Church of Scientology", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.316278Z", - "index": 2017091201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 477, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/09/477-holiday-diary-part-4-the-fresh-prince-of-bel-air/", - "post_title": "477. Holiday Diary (Part 4) The Fresh Prince of Bel Air", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.308282Z", - "index": 2017090901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 476, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/03/476-holiday-diary-part-3-astronomy-astrology-flat-earth-conspiracy-theory/", - "post_title": "476. Holiday Diary (Part 3) Astronomy, Astrology & Flat Earth Conspiracy Theory", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.301285Z", - "index": 2017090302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 475, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/09/03/475-holiday-diary-part-2-modern-art-is-it-amazing-or-is-it-rubbish/", - "post_title": "475. Holiday Diary (Part 2) Modern Art: Is it amazing, or is it rubbish?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.293286Z", - "index": 2017090301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 474, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/31/474-holiday-diary-part-1/", - "post_title": "474. Holiday Diary (Part 1) New Arrival, New Destinations", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.286288Z", - "index": 2017083101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 473, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/22/473-explaining-the-rules-of-cricket-with-dad/", - "post_title": "473. Explaining the Rules of Cricket (with Dad)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.213313Z", - "index": 2017082201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/18/website-only-star-wars-dvd-commentary-with-james/", - "post_title": "[Website Only] Star Wars DVD Commentary (with James) ***Contains swearing \u2013 Not suitable for Children***", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.205315Z", - "index": 2017081801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/15/why-does-the-uk-have-so-many-accents-recorded-february-2017/", - "post_title": "Why does the UK have so many accents? (Recorded February 2017)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.197313Z", - "index": 2017081501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/", - "post_title": "Luke\u2019s Criminal Past (ZEP Episode 185)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.190516Z", - "index": 2017081401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 472, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/10/472-andy-johnson-at-the-london-school-of-english-part-2-why-andy-runs-marathons/", - "post_title": "472. Andy\u2019s Survival Story / Why Andy Runs Marathons (with Andy Johnson)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.182520Z", - "index": 2017081001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 471, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/06/471-andy-johnson-at-the-london-school-of-english-part-1-lego-self-directed-learning-accents/", - "post_title": "471. Stepping on Lego, Self-directed Learning, Accents (with Andy Johnson)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.174521Z", - "index": 2017080601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/08/02/ive-got-something-to-tell-you-im-leaving/", - "post_title": "I\u2019m going on holiday \u2013 back in a few weeks!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.167524Z", - "index": 2017080201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 470, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/31/470-understanding-the-liverpool-accent/", - "post_title": "470. Understanding the Liverpool Accent", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.159533Z", - "index": 2017073101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 469, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/27/469-british-comedy-john-bishop/", - "post_title": "469. British Comedy: John Bishop", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.152533Z", - "index": 2017072701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 468, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/24/468-punk-music-culture-with-james/", - "post_title": "468. Punk \u2013 Music & Culture (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.144531Z", - "index": 2017072401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 467, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/20/467-a-boiling-hot-evening-ramble-comments-questions/", - "post_title": "467. A Boiling-Hot Evening Ramble \u2013 Comments & Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.137534Z", - "index": 2017072001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 466, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/15/466-get-this-word-into-your-life/", - "post_title": "466. Get this word into your life", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.129536Z", - "index": 2017071501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 465, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/10/465-how-i-make-episodes-of-the-podcast-part-2/", - "post_title": "465. How I make episodes of the podcast (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.121545Z", - "index": 2017071001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 464, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/06/464-how-i-make-episodes-of-the-podcast-part-1/", - "post_title": "464. How I make episodes of the podcast (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.113548Z", - "index": 2017070601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 463, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/07/03/463-news-comments-questions/", - "post_title": "463. News, Comments & Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.106548Z", - "index": 2017070301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 462, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/28/462-british-comedy-bill-bailey/", - "post_title": "462. British Comedy: Bill Bailey", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.099547Z", - "index": 2017062801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 461, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/24/461-25-deceptively-difficult-questions-with-amber-paul-sarah/", - "post_title": "461. 25 Deceptively Difficult Questions (with Amber, Paul & Sarah)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.091549Z", - "index": 2017062401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 460, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/20/460-catching-up-with-amber-paul-6-feat-sarah-donnelly/", - "post_title": "460. Catching Up With Amber & Paul #6 (feat. Sarah Donnelly)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.083557Z", - "index": 2017062001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 459, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/17/459-lazing-on-a-sunny-afternoon/", - "post_title": "459. Lazing on a Sunny Afternoon", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.075559Z", - "index": 2017061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/15/i-was-on-the-rock-n-roll-english-podcast-and-the-earful-tower-podcast-this-week/", - "post_title": "[Website content] I was on The Rock n\u2019 Roll English Podcast and The Earful Tower Podcast this week", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.068562Z", - "index": 2017061501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 458, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/14/458-the-rick-thompson-report-post-election-2017/", - "post_title": "458. The Rick Thompson Report: Post-Election 2017", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.060563Z", - "index": 2017061401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 457, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/09/457-conclusions-about-language-learning-from-the-david-crystal-interview-part-2/", - "post_title": "457. Conclusions about Language Learning from the David Crystal Interview (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.053565Z", - "index": 2017060902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 456, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/09/456-conclusions-about-language-learning-from-the-david-crystal-interview-part-1/", - "post_title": "456. Conclusions about Language Learning from the David Crystal Interview (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.045568Z", - "index": 2017060901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 455, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/06/455-david-crystal-interview-part-2-questions-from-listeners/", - "post_title": "455. David Crystal Interview (Part 2) Questions from Listeners", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.038571Z", - "index": 2017060601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/06/01/30029/", - "post_title": "A Message from Amber", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.030569Z", - "index": 2017060101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 454, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/31/454-david-crystal-interview-part-1-professor-of-linguistics/", - "post_title": "454. David Crystal Interview (Part 1) Professor of Linguistics", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.023576Z", - "index": 2017053101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 453, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/27/453-the-36-questions-that-lead-to-love-with-amber-paul/", - "post_title": "453. The 36 Questions that Lead to Love (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:29.015574Z", - "index": 2017052701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 452, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/24/452-a-conversation-about-language-with-amber-paul/", - "post_title": "452. A Conversation About Language (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.956597Z", - "index": 2017052401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 451, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/22/451-film-club-alien-covenant/", - "post_title": "451. Film Club: Alien Covenant", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.949596Z", - "index": 2017052201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 450, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/16/450-comments-questions/", - "post_title": "450. Comments & Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.941602Z", - "index": 2017051601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 449, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/13/449-film-club-touching-the-void-part-2/", - "post_title": "449. Film Club: Touching the Void (Part 2) Learning a Language is Like Climbing a Mountain", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.934600Z", - "index": 2017051301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 448, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/12/448-film-club-touching-the-void-part-1/", - "post_title": "448. Film Club: Touching The Void (Part 1) Learning a Language is Like Climbing a Mountain", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.926608Z", - "index": 2017051201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 447, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/08/447-what-is-this-british-humour/", - "post_title": "447. What is this, British Humour? (with Amber Minogue)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.919609Z", - "index": 2017050801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 446, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/05/446-british-tv-top-gear/", - "post_title": "446. British TV: Top Gear", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.911612Z", - "index": 2017050501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 445, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/05/01/445-british-podcast-award-hello-to-new-listeners-17-vocabulary-expressions/", - "post_title": "445. British Podcast Award / Hello to New Listeners / 17 Vocabulary Expressions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.904615Z", - "index": 2017050101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 444, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/25/444-the-rick-thompson-report-snap-general-election-2017/", - "post_title": "444. The Rick Thompson Report: Snap General Election 2017", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.896613Z", - "index": 2017042501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 443, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/21/443-the-trip-to-japan-part-2/", - "post_title": "443. The Trip to Japan (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.888622Z", - "index": 2017042102, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 442, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/21/442-the-trip-to-japan-part-1/", - "post_title": "442. The Trip to Japan (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.880625Z", - "index": 2017042101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 441, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/18/441-andy-johnson-at-the-iatefl-conference/", - "post_title": "441. Andy Johnson at the IATEFL Conference", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.873626Z", - "index": 2017041801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 440, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/06/440-this-pile-of-books-on-my-desk/", - "post_title": "440. This Pile of Books on my Desk", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.866623Z", - "index": 2017040602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 439, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/06/439-reading-books-to-learn-english/", - "post_title": "439. Reading Books to Learn English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.857633Z", - "index": 2017040601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 438, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/04/04/438-hi-luke-i-have-a-question/", - "post_title": "438. Hi Luke, I have a question!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.850628Z", - "index": 2017040401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 437, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/31/437-ramble-news-31-march-2017/", - "post_title": "437. Ramble News \u2013 31 March 2017", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.841630Z", - "index": 2017033101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 436, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/28/436-the-return-of-the-lying-game-with-amber-paul-video/", - "post_title": "436. The Return of The Lying Game (with Amber & Paul) [Video]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.834634Z", - "index": 2017032801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/26/i-was-interviewed-on-my-fluent-podcast-with-daniel-goodson/", - "post_title": "I was interviewed on \u201cMy Fluent Podcast\u201d by Daniel Goodson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.826640Z", - "index": 2017032601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 435, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/24/435-catching-up-with-amber-paul-5-video/", - "post_title": "435. Catching Up With Amber & Paul #5 [Video]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.818638Z", - "index": 2017032401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 434, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/21/434-interview-with-paul-taylor-wtf-france-video/", - "post_title": "434. Interview with Paul Taylor \u2013 \u201cWTF France?\u201d [Video]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.810647Z", - "index": 2017032101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 433, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/16/433-british-tv-gordon-ramsays-kitchen-nightmares-part-2-video/", - "post_title": "433. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 2) [Video]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.803648Z", - "index": 2017031601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 432, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/14/432-british-tv-gordon-ramsays-kitchen-nightmares-part-1-video/", - "post_title": "432. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 1) [Video]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.795650Z", - "index": 2017031401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 431, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/09/431-restaurants-hotels-really-strange-tripadvisor-reviews-with-amber/", - "post_title": "431. Restaurants & Hotels / Really Strange TripAdvisor Reviews (with Amber)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.720675Z", - "index": 2017030901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 430, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/05/430-discussing-language-learning-life-with-fred-eyangoh/", - "post_title": "430. Discussing Language Learning & Life with Fred Eyangoh", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.712677Z", - "index": 2017030501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 429, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/03/01/429-ramblenews/", - "post_title": "429. RAMBLENEWS!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.705680Z", - "index": 2017030101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 428, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/23/428-british-comedy-limmys-show-part-2/", - "post_title": "428. British Comedy: Limmy\u2019s Show (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.697678Z", - "index": 2017022301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 427, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/22/427-british-comedy-limmys-show/", - "post_title": "427. British Comedy: Limmy\u2019s Show", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.690680Z", - "index": 2017022201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 426, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/16/426-thompson-taylor-minogue-victorian-detectives-part-2-with-amber-paul/", - "post_title": "426. Thompson, Taylor & Minogue: Victorian Detectives (Part 2) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.683683Z", - "index": 2017021601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 425, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/13/425/", - "post_title": "425. Thompson, Taylor & Minogue: Victorian Detectives (Part 1) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.675690Z", - "index": 2017021301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 424, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/08/424-with-andy-ben-from-the-london-school-of-english-part-2/", - "post_title": "424. With Andy & Ben from The London School of English (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.667693Z", - "index": 2017020801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 423, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/06/423-teacher-talking-time-with-andy-ben-from-the-london-school-of-english-part-1/", - "post_title": "423. With Andy & Ben from The London School of English (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.660690Z", - "index": 2017020601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 422, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/02/02/422-learning-british-dialects-with-korean-billy/", - "post_title": "422. Learning British Dialects with Korean Billy", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.652698Z", - "index": 2017020201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 421, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/29/421-skateboarding-a-new-olympic-sport-with-james/", - "post_title": "421. Skateboarding \u2013 A New Olympic Sport (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.645701Z", - "index": 2017012901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 420, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/26/420-anyone-fancy-a-brew-lets-have-a-nice-cup-of-tea/", - "post_title": "420. Anyone fancy a brew? Let\u2019s have a nice cup of tea!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.637704Z", - "index": 2017012601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 419, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/23/419-rogue-one-a-star-wars-story-spoiler-ramble-with-james/", - "post_title": "419. Rogue One: A Star Wars Story \u2013 SPOILER RAMBLE with James", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.630705Z", - "index": 2017012301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 418, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/19/418-the-rick-thompson-report-technology-and-the-future-january-2017/", - "post_title": "418. The Rick Thompson Report: Technology and The Future (January 2017)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.623707Z", - "index": 2017011901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 417, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/15/417-new-years-resolutions-and-language-learning-in-2017/", - "post_title": "417. New Year\u2019s Resolutions and Language Learning in 2017", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.614710Z", - "index": 2017011501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 416, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/13/416-what-was-the-most-popular-episode-of-lep-in-2016-more-podcast-statistics/", - "post_title": "416. What was the most popular episode of LEP in 2016? + more podcast statistics", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.607712Z", - "index": 2017011301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 415, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/10/415-with-the-family-part-3-more-encounters-with-famous-people/", - "post_title": "415. With the Family (Part 3) More Encounters with Famous People", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.599716Z", - "index": 2017011001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 414, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/05/414-with-the-family-part-2-my-uncle-met-a-rock-star/", - "post_title": "414. With the Family (Part 2) My Uncle Met a Rock Star", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.591717Z", - "index": 2017010501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 413, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2017/01/03/413-with-the-family-part-1-mums-cooking-vocabulary-with-uncle-nic/", - "post_title": "413. With The Family (Part 1) Mum\u2019s Cooking + Vocabulary (with Uncle Nic)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.584715Z", - "index": 2017010301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 412, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/26/412-british-festivals-and-holidays-part-2/", - "post_title": "412. British Festivals and Holidays (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.576717Z", - "index": 2016122602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 411, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/26/411-british-festivals-and-holidays-part-1/", - "post_title": "411. British Festivals and Holidays (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.569720Z", - "index": 2016122601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/22/a-quick-message-about-donations-please-consider-donating-to-doctors-without-borders-to-help-people-in-need/", - "post_title": "A Quick Message About Donations \u2013 Please consider donating to \u201cDoctors Without Borders\u201d to help people in need", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.561722Z", - "index": 2016122201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 410, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/20/410-teaching-12-idioms-in-the-street-on-the-set-of-pauls-tv-show-with-amber/", - "post_title": "410. Teaching 12 Idioms in the Street / On the Set of Paul\u2019s TV Show (with Amber)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.553725Z", - "index": 2016122001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 409, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/16/409-a-christmas-mega-ramble-with-amber-minogue/", - "post_title": "409. A CHRISTMAS MEGA-RAMBLE with AMBER MINOGUE", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.545728Z", - "index": 2016121601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 408, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/13/408-catching-up-with-amber-paul-4-videos/", - "post_title": "408. Catching Up With Amber & Paul #4 (+ videos)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.537730Z", - "index": 2016121301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 407, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/07/407-reflections-on-language-learning-working-as-a-translator-interview-with-kristina-from-russia-winner-of-the-lep-anecdote-competition-2016/", - "post_title": "407. Reflections on Language Learning & Working as a Translator: Interview with Kristina from Russia, Winner of the LEP Anecdote Competition 2016", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.528734Z", - "index": 2016120701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 406, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/12/04/406-grammar-past-continuous-tense-uk-media-bias-brazil-football-tragedy/", - "post_title": "406. Grammar (Past Continuous Tense) / UK Media Bias / Brazil Football Tragedy", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.520736Z", - "index": 2016120401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 405, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/30/405-british-accents-in-the-lord-of-the-rings-part-2/", - "post_title": "405. British Accents in The Lord of the Rings (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.513743Z", - "index": 2016113002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 404, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/30/404-british-accents-in-the-lord-of-the-rings-part-1/", - "post_title": "404. British Accents in The Lord of the Rings (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.506741Z", - "index": 2016113001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 403, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/29/403-competition-results-war-story-grammar-my-dads-accent/", - "post_title": "403. Competition Results / War Story / Grammar & Punctuation / My Dad\u2019s Accent", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.498744Z", - "index": 2016112901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 402, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/23/402-the-rick-thompson-report-whats-going-on-nov-2016-post-truth-politics-cricket-and-tetris/", - "post_title": "402. The Rick Thompson Report: What\u2019s Going On? Nov. 2016 (Post-Truth Politics, Cricket and Tetris)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.490751Z", - "index": 2016112301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 401, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/21/401-switch-off-your-editor-to-improve-your-fluency-in-english/", - "post_title": "401. \u2018Switch off your editor\u2019 to improve your fluency in English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.483748Z", - "index": 2016112101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 400, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/18/400-the-pink-gorilla-story-2/", - "post_title": "400. The Pink Gorilla Story 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.475750Z", - "index": 2016111801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 399, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/15/399-the-return-of-molly-martinez-with-dane-nightingale/", - "post_title": "399. The Return of Molly Martinez (with Dane Nightingale)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.468754Z", - "index": 2016111501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 398, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/09/398-us-election-result-ramble-message-song/", - "post_title": "398. US Election Result Ramble + Message + Song", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.460755Z", - "index": 2016110901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 397, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/11/07/397-an-80-minute-ramble/", - "post_title": "397. An 80-Minute Ramble", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.453757Z", - "index": 2016110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 396, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/28/396-the-lep-anecdote-competition-round-2/", - "post_title": "396. The LEP Anecdote Competition \u2013 ROUND 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.445760Z", - "index": 2016102801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 395, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/27/395-have-you-ever-with-paul-taylor-and-robert-hoehn/", - "post_title": "395. \u201cHave you ever\u2026?\u201d with Paul Taylor and Robert Hoehn", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.438762Z", - "index": 2016102701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 394, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/23/394-opp-other-peoples-podcasts-part-4/", - "post_title": "394. OPP: Other People\u2019s Podcasts (Part 4)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.430765Z", - "index": 2016102301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 393, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/22/393-opp-other-peoples-podcasts-part-3/", - "post_title": "393. OPP: Other People\u2019s Podcasts (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.423767Z", - "index": 2016102201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 392, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/19/392-what-are-the-most-essential-skills-of-a-good-foreign-language-learner/", - "post_title": "392. What are the most essential skills of a good foreign language learner?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.415772Z", - "index": 2016101901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 391, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/17/391-discussing-language-culture-comedy-with-alexander-van-walsum/", - "post_title": "391. Discussing Language, Culture & Comedy with Alexander van Walsum", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.407773Z", - "index": 2016101701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 390, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/14/390-the-rick-thompson-report-hard-brexit-u-s-election/", - "post_title": "390. The Rick Thompson Report: Hard Brexit / U.S. Election", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.399776Z", - "index": 2016101401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 389, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/11/389-us-presidential-election-2016-trump-vs-clinton-with-sarah-sebastian-part-2/", - "post_title": "389. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.391778Z", - "index": 2016101102, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 388, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/11/388-us-presidential-election-2016-trump-vs-clinton-with-sarah-and-sebastian/", - "post_title": "388. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.384780Z", - "index": 2016101101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 387, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/07/387-lep-anecdote-competition-entries-please-listen-vote/", - "post_title": "387. LEP Anecdote Competition Entries \u2013 Please listen & vote", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.376783Z", - "index": 2016100701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 386, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/05/386-breaking-the-intermediate-plateau-part-2/", - "post_title": "386. Breaking the Intermediate Plateau (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.369786Z", - "index": 2016100502, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 385, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/10/05/385-breaking-the-intermediate-plateau-part-1/", - "post_title": "385. Breaking the Intermediate Plateau (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.361788Z", - "index": 2016100501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 384, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/30/384-teaching-grammar-social-english/", - "post_title": "384. Teaching Grammar & Social English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.354790Z", - "index": 2016093001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 383, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/27/383-more-ian-moore/", - "post_title": "383. More Ian Moore", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.345793Z", - "index": 2016092701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/23/please-take-my-survey-anecdote-competition-russian-joke-video/", - "post_title": "Please take my survey / Anecdote Competition / \u2018Russian Joke\u2019 Video", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.337795Z", - "index": 2016092301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 382, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/21/382-mod-culture-with-ian-moore/", - "post_title": "382. Mod Culture with Ian Moore", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.329798Z", - "index": 2016092101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 381, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/17/381-discussing-cultural-differences-with-amber-paul/", - "post_title": "381. Discussing Cultural Differences with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.322801Z", - "index": 2016091701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 380, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/12/380-catching-up-with-amber-and-paul-3/", - "post_title": "380. Catching Up with Amber and Paul #3", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.314803Z", - "index": 2016091201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 379, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/07/379-the-lep-anecdote-competition/", - "post_title": "379. The LEP Anecdote Competition", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.307806Z", - "index": 2016090701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 378, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/05/378-holiday-in-thailand-part-2/", - "post_title": "378. Holiday in Thailand (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.299809Z", - "index": 2016090501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 377, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/09/03/377-holiday-in-thailand/", - "post_title": "377. Holiday in Thailand (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.292811Z", - "index": 2016090301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/12/im-going-on-holiday-no-podcasts-for-a-while/", - "post_title": "I\u2019m going on holiday \u2013 no podcasts for a while", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.284814Z", - "index": 2016081204, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 376, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/12/376-a-game-of-mini-golf-and-a-pint-with-james/", - "post_title": "376. A Game of Mini Golf and a Pint (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.276816Z", - "index": 2016081203, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 375, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/12/375-the-lep-pub-quiz-with-alex-love/", - "post_title": "375. The LEP Pub Quiz (with Alex Love)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.269823Z", - "index": 2016081202, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 374, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/12/374-alexs-edinburgh-report/", - "post_title": "374. Alex\u2019s Edinburgh Fringe Report", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.261826Z", - "index": 2016081201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 373, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/10/373-who-wants-to-be-good-at-english/", - "post_title": "373. Who Wants to Be Good at English?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.254828Z", - "index": 2016081001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 372, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/09/372-the-importance-of-anecdotes-in-english-narrative-tenses-four-anecdotes", - "post_title": "372. The Importance of Anecdotes in English / Narrative Tenses / Four Anecdotes", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.246831Z", - "index": 2016080901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 371, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/07/371-in-conversation-with-rob-ager-from-liverpool-part-2-film-analysis-hidden-meanings-stanley-kubrick-conspiracy-theory/", - "post_title": "371. In Conversation with Rob Ager from Liverpool (PART 2: Film Analysis / Hidden Meanings / Stanley Kubrick / Conspiracy Theory)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.238828Z", - "index": 2016080702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 369, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/03/389-pokemon-go-its-just-a-game-or-is-it/", - "post_title": "369. Pok\u00e9mon GO \u2013 It\u2019s just a game, OR IS IT?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.158855Z", - "index": 2016080301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 368, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/08/02/368-the-lep-annual-general-meeting-2016-questions/", - "post_title": "368. The LEP Annual General Meeting 2016 / QUESTIONS", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.150862Z", - "index": 2016080201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 367, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/31/367-talking-about-nothing-with-alex-love-invaded-by-robot-aliens-part-2/", - "post_title": "367. Talking about Nothing with Alex Love (Invaded by Robot Aliens) PART 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.142860Z", - "index": 2016073102, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 366, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/31/366-talking-about-nothing-with-alex-love-invaded-by-robot-aliens/", - "post_title": "366. Talking about Nothing with Alex Love (Invaded by Robot Aliens)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.135862Z", - "index": 2016073101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/27/quick-hello-notting-hill-carnival-audio/", - "post_title": "Quick Hello / Notting Hill Carnival Audio", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.127869Z", - "index": 2016072701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 365, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/17/365-brexit-3-weeks-later-a-conversation-with-my-dad/", - "post_title": "365. BREXIT: 3 Weeks Later (A conversation with my Dad)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.120872Z", - "index": 2016071701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 364, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/15/364-ten-top-tips-for-learning-english/", - "post_title": "364. TEN TOP TIPS for Learning English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.112874Z", - "index": 2016071501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 363, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/07/03/363-muhammad-ali-the-rumble-in-the-jungle/", - "post_title": "363. Muhammad Ali & The Rumble in the Jungle", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.105877Z", - "index": 2016070301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 362, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/28/362-getting-things-off-my-chest-part-2/", - "post_title": "362. Getting things off my chest! (Part 2) Brexit / Football", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.097875Z", - "index": 2016062802, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 361, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/28/361-getting-things-off-my-chest-part-1/", - "post_title": "361. Getting things off my chest! (Part 1) Brexit / Football", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.089877Z", - "index": 2016062801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 360, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/24/360-the-day-after-brexit-thoughts-and-feelings/", - "post_title": "360. THE DAY AFTER BREXIT (Thoughts and feelings)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.081880Z", - "index": 2016062402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 359, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/24/359-brexit-jokes-eu-referendum-night/", - "post_title": "359. BREXIT JOKES / EU REFERENDUM NIGHT", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.073648Z", - "index": 2016062401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 358, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/23/358-fete-de-la-musique-world-music-festival-in-paris/", - "post_title": "358. F\u00eate de la Musique / World Music Festival in Paris", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.066652Z", - "index": 2016062301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 357, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/19/357-olly-richards/", - "post_title": "357. Learning Languages with Olly Richards", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.059090Z", - "index": 2016061901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 356, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/17/356-lep-meeting-football-brexit-events-in-the-uk-jo-cox/", - "post_title": "356. News / Football / Brexit / Events in the UK / Jo Cox", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.052096Z", - "index": 2016061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 355, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/13/355-euro-2016-football-hooliganism-violence-in-marseille-england-vs-russia/", - "post_title": "355. EURO 2016 Football: Hooliganism & Violence in Marseille / England vs Russia", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.043099Z", - "index": 2016061301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 354, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/10/354-would-you-rather-with-amber-paul-james-simpson/", - "post_title": "354. Would You Rather\u2026? (with Amber, Paul & James Simpson)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.036101Z", - "index": 2016061001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 353, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/07/353-award-ceremony-paris-weather-crazy-idea/", - "post_title": "353. Award Ceremony / Paris Weather / Crazy Idea", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.028103Z", - "index": 2016060702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 352, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/06/07/352-brexit-key-vocabulary-and-concepts/", - "post_title": "352. BREXIT: Key Vocabulary and Concepts", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.021106Z", - "index": 2016060701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 351, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/29/351-brexit-should-the-uk-leave-the-eu-a-conversation-with-my-dad/?w3tc_note=flush_all", - "post_title": "351. BREXIT: Should the UK leave the EU? (A Conversation with my Dad)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.013104Z", - "index": 2016052901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 350, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/26/350-x-men-apocalypse-film-review/", - "post_title": "350. Film Club: X-Men Apocalypse (Review)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:28.005106Z", - "index": 2016052601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 349, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/24/349-whos-the-best-superhero-with-paul-langton/", - "post_title": "349. Who\u2019s the best superhero? (with Paul Langton)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.997114Z", - "index": 2016052401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 348, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/19/348-marvel-superhero-movies-captain-america-civil-war-part-2/", - "post_title": "348. Film Club: Marvel / Captain America Civil War (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.990117Z", - "index": 2016051902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 347, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/19/347-marvel-superhero-movies-captain-america-civil-war-part-1/", - "post_title": "347. Film Club: Marvel / Captain America Civil War (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.983115Z", - "index": 2016051901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 346, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/13/346-rambling-on-a-friday-afternoon/", - "post_title": "346. Rambling on a Friday Afternoon", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.975121Z", - "index": 2016051301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 345, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/05/11/345-elton-award-nomination-phrasal-verbs-idioms-brooklyn-the-revenant-museum-of-natural-history-more/", - "post_title": "345. ELTon Award Nomination / Phrasal Verbs & Idioms / Brooklyn / The Revenant / Museum of Natural History & More", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.968119Z", - "index": 2016051101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 344, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/22/344-a-totally-terrific-talk-on-the-terrace-with-the-tangential-trio-feat-tom-morton/", - "post_title": "344. A Totally Terrific Talk on the Terrace with The Tangential Trio (feat. Tom Morton) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.960125Z", - "index": 2016042201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 343, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/20/the-interactive-lying-game/", - "post_title": "343. The Interactive Lying Game (with Amber & Paul) / Descriptive Adjectives with T / Three is a Magic Number", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.953128Z", - "index": 2016042001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 342, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/18/342-pauls-la-bise-video-success-audition-story-with-amber-paul/", - "post_title": "342. Paul\u2019s \u201cLa Bise\u201d Video Success / Audition Story (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.945125Z", - "index": 2016041801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 341, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/15/341-catching-up-with-amber-paul-again/", - "post_title": "341. Catching Up With Amber & Paul, Again", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.938128Z", - "index": 2016041501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 340, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/07/340-lep-photo-competition-results-winners-its-leps-7th-birthday/", - "post_title": "340. LEP Photo Competition Results & Winners / It\u2019s LEP\u2019s 7th Birthday", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.929131Z", - "index": 2016040701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 339, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/04/03/339-a-murder-mystery-detective-story-part-2/", - "post_title": "339. A Murder Mystery Detective Story (Part 2 of 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.922133Z", - "index": 2016040301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 338, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/31/338-a-murder-mystery-detective-story/", - "post_title": "338. A Murder Mystery Detective Story (Part 1 of 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.914136Z", - "index": 2016033101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/24/i-was-interviewed-by-olly-richards-on-his-podcast-called-i-will-teach-you-a-language-and-we-talked-about-language-learning/", - "post_title": "I was interviewed by Olly Richards on his podcast, called \u201cI Will Teach You a Language\u201d and we talked about language learning", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.907138Z", - "index": 2016032401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 337, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/23/337-murder-mile-walks-stories-of-londons-most-infamous-shocking-murders-some-explicit-content-swearing/", - "post_title": "337. MURDER MILE WALKS: Stories of London\u2019s Most Infamous & Shocking Murders [Some Explicit Content + Swearing]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.899142Z", - "index": 2016032301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/", - "post_title": "I was invited onto Craig Wealand\u2019s weekly Blab, and we talked about comedy", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.892143Z", - "index": 2016032001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 336, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/16/336-drinking-scottish-whisky-at-a-german-business-meeting-while-wearing-a-kilt-and-playing-a-flute-and-other-stories-with-carrick-cameron/", - "post_title": "336. Drinking Scottish Whisky at a German Business Meeting While Wearing a Kilt and Playing a Flute\u2026 and other stories (with Carrick Cameron)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.884146Z", - "index": 2016031601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 335, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/13/335-vocabulary-review-phrases-expressions-from-episode-334/", - "post_title": "335. VOCABULARY REVIEW: Phrases & Expressions from Episode 334.", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.876148Z", - "index": 2016031301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 334, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/09/334-interview-with-craig-wealand-from-inglespodcast/", - "post_title": "334. Interview with Craig Wealand (from InglesPodcast)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.869151Z", - "index": 2016030901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/04/my-interview-with-school-kids-from-ies-school-in-san-fernando-spain/", - "post_title": "My interview with school kids from IES School in San Fernando, Spain", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.860154Z", - "index": 2016030401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 333, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/03/01/333-more-misheard-lyrics-\u266c/", - "post_title": "333. More Misheard Lyrics \u266c", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.853156Z", - "index": 2016030101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 332, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/02/26/332-olly-richards-english-polyglot-top-advice-and-strategies-for-language-learning/", - "post_title": "332. Olly Richards: English Polyglot \u2013 Top Advice and Strategies for Language Learning", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.844159Z", - "index": 2016022601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 331, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/02/22/331-hows-your-english-and-why-speaking-is-so-important/", - "post_title": "331. How\u2019s your English? (and why speaking is so important)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.837161Z", - "index": 2016022201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 330, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/02/17/330-lets-play-grand-theft-auto-5-and-learn-some-english-while-doing-it/", - "post_title": "330. Let\u2019s Play\u2026 Grand Theft Auto 5 (and learn some English while doing it)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.829168Z", - "index": 2016021701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 329, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/02/14/329-a-rambling-chat-with-james-news-stories-jokes/", - "post_title": "329. A Rambling Chat with James (News, Stories, Jokes)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.822171Z", - "index": 2016021401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 328, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/02/03/328-cooking-with-luke-verbs-and-expressions-in-the-kitchen/", - "post_title": "328. Cooking with Luke \u2013 Verbs and Expressions in the Kitchen", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.814169Z", - "index": 2016020301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 327, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/20/327-the-lep-photo-competition-please-check-out-the-photos-and-vote/", - "post_title": "327. The LEP Photo Competition \u2013 Please check out the photos and vote", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.807171Z", - "index": 2016012002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 326, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/20/326-catching-up-with-oli-future-predictions/", - "post_title": "326. Catching up with Oli / Future Predictions (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.800174Z", - "index": 2016012001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 325, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/18/325-catching-up-with-oli-future-predictions/", - "post_title": "325. Catching Up with Oli / Future Predictions (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.792181Z", - "index": 2016011801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 324, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/14/324-david-bowie-part-2/", - "post_title": "324. David Bowie (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.785183Z", - "index": 2016011402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 323, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/14/323-david-bowie-part-1/", - "post_title": "323. David Bowie (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.777186Z", - "index": 2016011401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 322, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/07/322-with-the-thompsons/", - "post_title": "322. With The Thompsons", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.770188Z", - "index": 2016010701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 321, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2016/01/04/321-star-wars-episode-vii-the-force-awakens-spoiler-review/", - "post_title": "321. Star Wars Episode VII: The Force Awakens \u2013 SPOILER REVIEW", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.762190Z", - "index": 2016010401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 320, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/23/320-a-christmas-carol-by-charles-dickens/", - "post_title": "320. A Christmas Carol by Charles Dickens", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.755193Z", - "index": 2015122301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 319, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/16/319-star-wars-vii-the-force-awakens-reaction-no-spoilers/", - "post_title": "319. Star Wars VII: The Force Awakens \u2013 Reaction (No spoilers!)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.746191Z", - "index": 2015121602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 318, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/16/318-the-rematch-part-2/", - "post_title": "318. The Rematch (Part 2) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.739193Z", - "index": 2015121601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 317, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/11/the-rematch/", - "post_title": "317. The Rematch (Part 1) With Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.731196Z", - "index": 2015121101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 316, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/07/316-british-comedy-tim-vine-part-2/", - "post_title": "316. British Comedy: Tim Vine (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.724198Z", - "index": 2015120701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 315, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/03/315-do-me-a-favour-take-my-business-english-survey/", - "post_title": "315. Do me a favour \u2013 Take my Business English Survey!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.716202Z", - "index": 2015120301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 314, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/12/01/lukes-guided-sleep-meditation/", - "post_title": "314. Luke\u2019s Guided Sleep Meditation", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.709203Z", - "index": 2015120101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 313, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/27/313-british-comedy-tim-vine/", - "post_title": "313. British Comedy: Tim Vine", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.701206Z", - "index": 2015112701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 312, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/25/312-the-words-of-the-year-part-3/", - "post_title": "312. The Words of the Year (Part 3) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.694208Z", - "index": 2015112501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 311, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/18/311-the-words-of-the-year-2015-part-2/", - "post_title": "311. The Words of the Year (Part 2) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.687211Z", - "index": 2015111802, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 310, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/18/310-the-words-of-the-year-part-1/", - "post_title": "310. The Words of the Year (Part 1) with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.679213Z", - "index": 2015111801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/16/attacks-in-paris-13-november-2015-eyewitness-report/", - "post_title": "Attacks in Paris (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.672215Z", - "index": 2015111601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 309, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/11/309-the-lying-game-part-2/", - "post_title": "309. The Lying Game (Part 2) With Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.664218Z", - "index": 2015111101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 308, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/07/308-the-lying-game-part-1/", - "post_title": "308. The Lying Game (Part 1) With Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.657220Z", - "index": 2015110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 307, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/11/04/307-the-mystery-of-corporate-jargon-management-speak-part-2/", - "post_title": "307. The Mystery of Corporate Jargon & Management Speak (Part 2) with Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.650223Z", - "index": 2015110401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 306, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/28/306-corporate-jargon-management-speak-part-1/", - "post_title": "306. The Mystery of Corporate Jargon & Management Speak (Part 1) with Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.642225Z", - "index": 2015102801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 303, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/19/303-the-battle-of-britain/", - "post_title": "303. The Battle of Britain", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.469287Z", - "index": 2015101901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 302, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/14/302-bad-dentist-star-wars-adam-buxton-headphone-jams-jarvis-cocker/", - "post_title": "302. Bad Dentist / Star Wars / Adam Buxton / Headphone Jams / Jarvis Cocker", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.461290Z", - "index": 2015101401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 301, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/11/301-david-cameron-the-pig-bad-gig-story-who-is-ronnie-pickering/", - "post_title": "301. David Cameron & The Pig / Bad Gig Story / Who is Ronnie Pickering?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.454291Z", - "index": 2015101101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 300, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-2/", - "post_title": "300. EPISODE 300 (PART 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.446289Z", - "index": 2015100702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 300, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-1/", - "post_title": "300. EPISODE 300 (PART 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.438846Z", - "index": 2015100701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 299, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/30/299-the-bank-robbery-part-2/", - "post_title": "299. The Bank Robbery (Part 2) (with Amber, Paul and Sebastian)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.431844Z", - "index": 2015093001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 298, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/24/298-the-bank-robbery-part-1/", - "post_title": "298. The Bank Robbery (Part 1) (with Amber, Paul & Sebastian)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.423846Z", - "index": 2015092401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 297, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/18/using-humour-in-the-ielts-speaking-test-with-jessica-from-all-ears-english/", - "post_title": "297. Using Humour in the IELTS Speaking Test (With Jessica from All Ears English)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.416859Z", - "index": 2015091801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 296, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/11/296-learning-comedy-is-like-learning-a-language/", - "post_title": "296. Learning Comedy is like Learning a Language (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.408855Z", - "index": 2015091101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 295, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/07/295-california-road-trip-final-part/", - "post_title": "295. California Road Trip (Final Part)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.400859Z", - "index": 2015090701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 294, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/02/294-california-road-trip-part-7/", - "post_title": "294. California Road Trip (Part 7)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.392861Z", - "index": 2015090201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 293, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/09/01/293-california-road-trip-part-6/", - "post_title": "293. California Road Trip (Part 6)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.384865Z", - "index": 2015090101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 292, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/31/292-california-road-trip-part-5/", - "post_title": "292. California Road Trip (Part 5)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.377866Z", - "index": 2015083101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 291, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/28/291-california-road-trip-part-4/", - "post_title": "291. California Road Trip (Part 4)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.370868Z", - "index": 2015082801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 290, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/27/290-california-road-trip-part-3/", - "post_title": "290. California Road Trip (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.362866Z", - "index": 2015082701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 289, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/26/289-california-road-trip-part-2/", - "post_title": "289. California Road Trip (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.355868Z", - "index": 2015082602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 288, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/26/288-california-road-trip-part-1/", - "post_title": "288. California Road Trip (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.346871Z", - "index": 2015082601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 287, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/04/287-vocab-battle-with-amber-paul-exciting-title/", - "post_title": "287. VOCAB BATTLE!!! WITH AMBER & PAUL (exciting title)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.338874Z", - "index": 2015080402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 286, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/04/286-the-wedding-episode/", - "post_title": "286. The Wedding Episode", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.330881Z", - "index": 2015080401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 285, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/08/03/285/", - "post_title": "285. Ten More Fixed Expressions (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.323884Z", - "index": 2015080301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/07/22/an-experimental-live-video-podcast-on-periscope/", - "post_title": "An Experimental Live Video Podcast on Periscope", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.315883Z", - "index": 2015072201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 284, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/07/08/284-questions-from-tea4er-ru-part-2/", - "post_title": "284. Questions from Tea4er.ru (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.308884Z", - "index": 2015070801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 283, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/07/02/283-ten-fixed-expressions/", - "post_title": "283. Ten Fixed Expressions (with Paul Taylor)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.300887Z", - "index": 2015070201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 282, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/29/282-questions-from-tea4er-ru/", - "post_title": "282. Questions from Tea4er.ru", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.292894Z", - "index": 2015062901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 281, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/17/281-misheard-lyrics/", - "post_title": "281. Misheard Lyrics", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.285896Z", - "index": 2015061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 280, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/14/280-uk-superstitions/", - "post_title": "280. The UK\u2019s Favourite Superstitions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.277899Z", - "index": 2015061401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 279, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/10/279-marcus-keeley-northern-ireland-accent-part-3/", - "post_title": "279. Marcus Keeley / Northern Ireland / Accent (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.270903Z", - "index": 2015061001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 278, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/09/278-marcus-keeley-northern-ireland-part-2/", - "post_title": "278. Marcus Keeley / Northern Ireland (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.262899Z", - "index": 2015060902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 277, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/09/277-a-chat-with-marcus-keeley-from-northern-ireland/", - "post_title": "277. A Chat with Marcus Keeley from Northern Ireland (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.255901Z", - "index": 2015060901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/03/survey-what-kind-of-episodes-of-lep-do-you-prefer/", - "post_title": "Survey: What kind of episodes of LEP do you prefer?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.248904Z", - "index": 2015060301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 276, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/06/02/276-qa-session-5/", - "post_title": "276. Q&A Session #5", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.240912Z", - "index": 2015060201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 275, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/29/275-the-phrasal-verb-chronicles-2/", - "post_title": "275. The Phrasal Verb Chronicles #2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.233914Z", - "index": 2015052901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 274, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/26/274-qa-session-4/", - "post_title": "274. Q&A Session #4", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.225916Z", - "index": 2015052601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 273, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/24/273-the-bad-haircut-situation-part-2-more-role-plays-improvisations/", - "post_title": "273. The Bad Haircut Situation Part 2: More Role Plays & Improvisations (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.217918Z", - "index": 2015052401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 272, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/21/272-the-bad-haircut-situation/", - "post_title": "272. The Bad Haircut Situation (with Amber & Paul)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.209921Z", - "index": 2015052101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 271, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/17/catching-up-with-amber-and-paul/", - "post_title": "271. Catching Up with Amber & Paul", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.202919Z", - "index": 2015051701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 270, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/15/270-uk-general-election-results/", - "post_title": "270. UK General Election RESULTS", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.194927Z", - "index": 2015051501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 269, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/05/269-uk-general-election-2015-part-2/", - "post_title": "269. UK General Election 2015 (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.187928Z", - "index": 2015050501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 268, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/03/268-uk-general-election-2015-part-1/", - "post_title": "268. UK General Election 2015 (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.179931Z", - "index": 2015050301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 267, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/02/267-earthquake-in-nepal-other-news/", - "post_title": "267. Earthquake in Nepal + other news", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.172936Z", - "index": 2015050201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/05/01/lukes-tv-appearance-on-france-24-tv/", - "post_title": "Luke\u2019s TV Appearance on France24", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.164938Z", - "index": 2015050101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 266, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/04/24/266-telling-jokes-in-english-part-3/", - "post_title": "266. Telling Jokes in English (Part 3)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.157938Z", - "index": 2015042401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 265, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/04/23/265-telling-jokes-in-english-part-2/", - "post_title": "265. Telling Jokes in English (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.149937Z", - "index": 2015042301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 264, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/04/20/jokes1/", - "post_title": "264. Telling Jokes in English (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.141944Z", - "index": 2015042001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 263, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/04/08/263-past-present-future/", - "post_title": "263. Past, Present & Future", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.134946Z", - "index": 2015040801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/03/31/lukes-interview-on-inglespodcast/", - "post_title": "Luke\u2019s Interview on InglesPodcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.126948Z", - "index": 2015033101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/03/17/a-message-from-luke/", - "post_title": "A Message from Luke", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.119953Z", - "index": 2015031701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 262, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/03/03/262-what-is-britishness-part-2/", - "post_title": "262. What is Britishness? (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.111953Z", - "index": 2015030302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 261, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/03/03/261-what-is-britishness-part-1/", - "post_title": "261. What is Britishness? (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.104955Z", - "index": 2015030301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 260, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/02/26/kingsman/", - "post_title": "260. Kingsman: The Secret Service", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.096958Z", - "index": 2015022601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 259, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/02/24/259-eulogy-for-dennis/", - "post_title": "259. Eulogy for Dennis", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.089961Z", - "index": 2015022401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 258, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/02/17/258-award-win-thank-you-poem/", - "post_title": "258. Award Win / Thank You / Poem", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.081959Z", - "index": 2015021701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 257, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/02/10/257-be-positive/", - "post_title": "257. Be Positive", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.073966Z", - "index": 2015021001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 256, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/02/01/reading-books-in-english/", - "post_title": "256. Reading Books in English (and listening to them too)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.066964Z", - "index": 2015020101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 255, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/26/255-taken-3-expressions-with-take/", - "post_title": "255. Taken 3 / Expressions with \u2018Take\u2019", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.058971Z", - "index": 2015012601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 254, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/22/254-ielts-tips-tricks/", - "post_title": "254. IELTS Tips & Tricks", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.051973Z", - "index": 2015012201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 253, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/20/fluency-mc/", - "post_title": "253. Rapping with Fluency MC!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.043975Z", - "index": 2015012001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 252, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/16/marooned-with-my-music-james-thompson/", - "post_title": "252. Marooned With My Music: James Thompson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.036978Z", - "index": 2015011601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 251, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/13/251-welcome-to-lep-16-things-you-should-know-about-lep/", - "post_title": "251. Welcome to LEP / 16 Things You Should Know about LEP", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.027981Z", - "index": 2015011301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 250, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/11/250-marooned-with-my-music-gill-thompson/", - "post_title": "250. Marooned With My Music: Gill Thompson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.020983Z", - "index": 2015011101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 249, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/08/249-news-lep-merchandise-messages/", - "post_title": "249. News / LEP Merchandise / Messages", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.012986Z", - "index": 2015010801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 248, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/06/248-marooned-with-my-music-rick-thompson/", - "post_title": "248. Marooned With My Music: Rick Thompson", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:27.005988Z", - "index": 2015010601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 247, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2015/01/03/247-understanding-america/", - "post_title": "247. Understanding The USA", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.997991Z", - "index": 2015010301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 246, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/24/246-flight-stories/", - "post_title": "246. Flight Stories", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.990988Z", - "index": 2014122402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/24/video-one-of-lukes-stand-up-comedy-gigs/", - "post_title": "*Video \u2013 One of Luke\u2019s Stand-up Comedy Gigs", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.983991Z", - "index": 2014122401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 245, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/23/245-merry-christmas-other-news/", - "post_title": "245. Merry Christmas! (+more) + Video", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.975998Z", - "index": 2014122301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 244, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/15/244-urban-myths/", - "post_title": "244. Urban Myths", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.969000Z", - "index": 2014121501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 243, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/11/243-a-life-changing-teaching-experience-in-ghana/", - "post_title": "243. A Life-Changing Teaching Experience in Ghana", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.961002Z", - "index": 2014121101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 242, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/07/242-11-idioms-only-brits-understand-really/", - "post_title": "242. 11 Idioms Only Brits Understand (really?)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.954005Z", - "index": 2014120701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 241, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/02/241-star-wars/", - "post_title": "241. Star Wars", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.946008Z", - "index": 2014120202, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 240, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/12/02/240-politicians-avoiding-questions/", - "post_title": "240. Politicians Avoiding Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.939011Z", - "index": 2014120201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 239, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/26/239-prepositions-verb-collocations/", - "post_title": "239. Prepositions: Verb Collocations", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.931013Z", - "index": 2014112601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 238, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/24/238-prepositions-failed-attempt/", - "post_title": "238. Prepositions (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.924015Z", - "index": 2014112401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 237, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/18/237-opp-other-peoples-podcasts-part-2/", - "post_title": "237. OPP: Other People\u2019s Podcasts (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.916014Z", - "index": 2014111802, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 236, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/18/236-opp-other-peoples-podcasts-part-1/", - "post_title": "236. OPP: Other People\u2019s Podcasts (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.908020Z", - "index": 2014111801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/16/my-appearance-on-the-talk2learn-chatcast/", - "post_title": "*My Appearance on the Talk2Learn Chatcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.901022Z", - "index": 2014111601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 235, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/14/british-slang-n-to-z/", - "post_title": "235. British Slang (N to Z)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.893025Z", - "index": 2014111401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 234, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/11/234-making-choons-with-jim/", - "post_title": "234. Making \u201cChoons\u201d with My Brother", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.886027Z", - "index": 2014111101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 233, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/07/233-yep-winner-edgar-hernandez/", - "post_title": "233. YEP! Winner", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.878030Z", - "index": 2014110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 232, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/06/232-yep-runners-up-part-2/", - "post_title": "232. YEP! Runners Up (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.871027Z", - "index": 2014110602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 231, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/06/231-yep-runners-up-part-1/", - "post_title": "231. YEP! Runners Up (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.862030Z", - "index": 2014110601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 230, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/11/04/230-can-you-learn-a-language-in-6-months/", - "post_title": "230. Can You Learn a Language in 6 Months?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.855032Z", - "index": 2014110401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 229, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/30/229-zombies-part-2/", - "post_title": "229. Zombies! (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.846036Z", - "index": 2014103002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 228, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/30/228-zombies/", - "post_title": "228. Zombies! (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.839038Z", - "index": 2014103001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 227, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/27/227-sausages-barcodes-apple-watches/", - "post_title": "227. Sausages, Barcodes & Apple Watches", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.831041Z", - "index": 2014102701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/25/my-video-interview-with-gabby-wallace/", - "post_title": "*My Video Interview with Gabby Wallace from \u201cGo Natural English\u201d", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.824043Z", - "index": 2014102501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 226, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/21/226-on-a-boat/", - "post_title": "226. On a Boat", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.816046Z", - "index": 2014102101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 225, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/16/film-club-taken/", - "post_title": "225. Film Club: \u201cTaken\u201d", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.809048Z", - "index": 2014101601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 224, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/13/pronunciation-verb-tenses-connected-speech/", - "post_title": "224. Pronunciation: Verb Tenses & Connected Speech", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.802051Z", - "index": 2014101301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/10/please-consider-donating-to-lepra-org-uk/", - "post_title": "*Please Consider Donating to Lepra.org.uk", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.793053Z", - "index": 2014101001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 223, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/10/07/223-yep-competition-winners/", - "post_title": "223. YEP! Competition Winners", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.786056Z", - "index": 2014100701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 222, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/30/222-lukes-late-night-podcast/", - "post_title": "222. Luke\u2019s Late Night Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.778063Z", - "index": 2014093001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/26/video-playing-around-with-accents-in-english/", - "post_title": "Video: Playing Around with Accents in English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.771065Z", - "index": 2014092601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 221, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/23/221-a-cup-of-tea-with-corneliu-dragomirescu-part-2/", - "post_title": "221. A Cup of Tea with Corneliu Dragomirescu (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.763068Z", - "index": 2014092301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 220, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/17/220-a-cup-of-tea-with-corneliu-dragomirescu/", - "post_title": "220. A Cup of Tea with Corneliu Dragomirescu", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.756071Z", - "index": 2014091701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 219, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/10/scottish-independence/", - "post_title": "219. Scottish Independence", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.748073Z", - "index": 2014091001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 218, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/218-yep-competition-entries-8/", - "post_title": "218. YEP! Competition Entries #8", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.741075Z", - "index": 2014090708, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 217, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/217-yep-competition-entries-7/", - "post_title": "217. YEP! Competition Entries #7", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.733073Z", - "index": 2014090707, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 216, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/216-yep-competition-entries-6/", - "post_title": "216. YEP! Competition Entries #6", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.725075Z", - "index": 2014090706, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 215, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/215-yep-competition-entries-5/", - "post_title": "215. YEP! Competition Entries #5", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.718083Z", - "index": 2014090705, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 214, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/214-yep-competition-entries-4/", - "post_title": "214. YEP! Competition Entries #4", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.710085Z", - "index": 2014090704, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 213, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/213-yep-competition-entries-3/", - "post_title": "213. YEP! Competition Entries #3", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.703087Z", - "index": 2014090703, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 212, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/212-yep-competition-entries-2/", - "post_title": "212. YEP! Competition Entries #2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.695090Z", - "index": 2014090702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 211, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/07/211-yep-competition-entries-1/", - "post_title": "211. YEP! Competition Entries #1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.688092Z", - "index": 2014090701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 210, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/09/04/210-a-bit-of-a-chat-with-noman-hosni/", - "post_title": "210. A Cup of Tea with Noman Hosni", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.680095Z", - "index": 2014090401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 209, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/29/209-travelling-in-indonesia-part-2/", - "post_title": "209. Travelling in Indonesia (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.673097Z", - "index": 2014082902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 208, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/29/208-travelling-in-indonesia-part-1/", - "post_title": "208. Travelling in Indonesia (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.665095Z", - "index": 2014082901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 207, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/08/competition-inspiration/", - "post_title": "207. Competition Inspiration", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.658097Z", - "index": 2014080801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 206, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/06/205-summer-in-london-part-2/", - "post_title": "206. Summer in London (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.650101Z", - "index": 2014080601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 205, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/05/205-summer-in-london-part-1/", - "post_title": "205. Summer in London (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.642102Z", - "index": 2014080502, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 204, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/05/204-quick-hello-competition-update-more-news/", - "post_title": "204. Quick Hello: Competition Update & More News", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.635106Z", - "index": 2014080501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 203, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/04/203-the-flatmate-from-japan/", - "post_title": "203. The Flatmate from Japan", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.627107Z", - "index": 2014080401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 202, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/08/01/202-british-comedy-monty-python-the-holy-grail/", - "post_title": "202. British Comedy: Monty Python & The Holy Grail", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.620110Z", - "index": 2014080101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/30/my-interview-on-zdeneks-english-podcast/", - "post_title": "My Interview on Zden\u011bk\u2019s English Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.612113Z", - "index": 2014073001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 201, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/28/201-nikolay-kulikov-a-russian-comedian-in-london/", - "post_title": "201. Nikolay Kulikov: A Russian Comedian in London", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.605115Z", - "index": 2014072801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 200, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/25/200-new-competition-your-english-podcast/", - "post_title": "200. New Competition: \u201cYour English Podcast\u201d", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.597118Z", - "index": 2014072501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 199, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/17/199-the-ukusa-quiz/", - "post_title": "199. The UK/USA Quiz", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.590119Z", - "index": 2014071702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 198, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/17/198-a-cup-of-tea-with-molly-martinez/", - "post_title": "198. A Cup of Tea with Molly Martinez", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.582123Z", - "index": 2014071701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 197, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/15/197-world-cup-2014-part-6-final-comments/", - "post_title": "197. World Cup 2014 (Part 6: Final Comments)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.575125Z", - "index": 2014071501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 196, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/07/196-cycling-from-coast-to-coast/", - "post_title": "196. Cycling from Coast to Coast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.567128Z", - "index": 2014070701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 195, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/04/195-british-comedy-monty-pythons-flying-circus/", - "post_title": "195. British Comedy: Monty Python\u2019s Flying Circus", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.558130Z", - "index": 2014070401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 194, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/07/01/world-cup-2014-part-5-more-forum-comments/", - "post_title": "194. World Cup 2014 (Part 5: More Forum Comments)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.551133Z", - "index": 2014070101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 192, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/30/192-culture-shock-life-in-london-part-1/", - "post_title": "192. Culture Shock: Life in London (Pt.1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.468160Z", - "index": 2014063001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 191, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/25/191-culture-shock-the-4-stages/", - "post_title": "191. Culture Shock: The 4 Stages", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.460162Z", - "index": 2014062501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 190, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/23/190-world-cup-2014-part-4-some-history/", - "post_title": "190. World Cup 2014 (Part 4: Dad\u2019s Memories of 1966)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.453164Z", - "index": 2014062301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 189, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/20/189-world-cup-2014-part-3-your-comments/", - "post_title": "189. World Cup 2014 (Part 3: Your Comments)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.445167Z", - "index": 2014062001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 188, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/18/188-world-cup-2014-part-2-england-the-dark-side-of-the-world-cup/", - "post_title": "188. World Cup 2014 (Part 2: England & The Dark Side of the World Cup)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.438169Z", - "index": 2014061802, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 187, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/18/187-world-cup-2014-part-1/", - "post_title": "187. World Cup 2014 (Part 1: The Basic Guide)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.430172Z", - "index": 2014061801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 186, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/16/understanding-culture-shock/", - "post_title": "186. Understanding Culture Shock with Lindsay & Gabby", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.423175Z", - "index": 2014061601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 185, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/13/the-trip-to-new-york/", - "post_title": "185. The Trip to New York", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.414177Z", - "index": 2014061301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/11/welcome-to-the-new-website-teacherluke-co-uk/", - "post_title": "Welcome to the New Website \u2013 teacherluke.co.uk", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.406180Z", - "index": 2014061101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 184, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/10/184-lukes-d-day-diary-part-2/", - "post_title": "184. Luke\u2019s D-Day Diary (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.399183Z", - "index": 2014061002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 183, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/06/10/183-lukes-d-day-diary/", - "post_title": "183. Luke\u2019s D-Day Diary", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.391190Z", - "index": 2014061001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 182, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/05/30/182-learning-english-with-yacine-belhousse/", - "post_title": "182. Learning English with Yacine Belhousse", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.384187Z", - "index": 2014053001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/05/28/my-interview-on-all-ears-english-podcast/", - "post_title": "My Interview on the All Ears English Podcast \u2013 Talking about humour, comedy and how to tell jokes in English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.376190Z", - "index": 2014052801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 181, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/05/23/181-vocabulary-expressions-from-episode-180/", - "post_title": "181. Vocabulary & Expressions from Episode 180", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.368193Z", - "index": 2014052301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 180, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/05/20/180-dislocated-shoulder/", - "post_title": "180. How my Brother Dislocated his Shoulder (with James)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.359195Z", - "index": 2014052001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 179, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/05/15/179-the-ramblings-of-an-exhausted-teacher/", - "post_title": "179. The Ramblings of an Exhausted Teacher", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.352198Z", - "index": 2014051501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 178, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/04/30/178-im-still-here/", - "post_title": "178. I\u2019m Still Here", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.343206Z", - "index": 2014043001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/04/06/a-letter-to-my-listeners/", - "post_title": "A Letter to My Listeners", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.336207Z", - "index": 2014040601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 177, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", - "post_title": "177. What Londoners Say vs What They Mean", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.328210Z", - "index": 2014040101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 176, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/03/24/176-grammar-verb-tense-review/", - "post_title": "176. Grammar: Verb Tense Review", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.321212Z", - "index": 2014032401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 175, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/03/18/175-the-phrasal-verb-chronicles-1/", - "post_title": "175. The Phrasal Verb Chronicles #1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.313211Z", - "index": 2014031801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 174, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/03/12/174-how-to-learn-english-with-lukes-english-podcast/", - "post_title": "174. How to Learn English with Luke\u2019s English Podcast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.306213Z", - "index": 2014031201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 173, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/03/06/173-the-curse-of-the-lambton-worm/", - "post_title": "173. The Curse of The Lambton Worm", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.298220Z", - "index": 2014030601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 172, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/26/172-british-comedy-peter-cook-dudley-moore/", - "post_title": "172. British Comedy: Peter Cook & Dudley Moore", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.291222Z", - "index": 2014022601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 171, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/21/171-a-cup-of-tea-with-daniel-burt-part-2/", - "post_title": "171. A Cup of Tea with Daniel Burt (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.283221Z", - "index": 2014022101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 170, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/19/170-basking-in-my-moment-of-glory/", - "post_title": "170. Basking in My Moment of Glory", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.276227Z", - "index": 2014021901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 169, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/15/danielburt/", - "post_title": "169. A Cup of Tea with Daniel Burt (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.268225Z", - "index": 2014021501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 168, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/11/168-please-vote-and-stuff-like-that/", - "post_title": "168. Please Vote! (and stuff like that)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.261232Z", - "index": 2014021101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 167, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/02/05/167-memory-mnemonics-learning-english/", - "post_title": "167. Memory, Mnemonics & Learning English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.253235Z", - "index": 2014020501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 166, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/31/166-the-prawn-story/", - "post_title": "166. The Prawn Story", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.245237Z", - "index": 2014013101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 165, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/23/english-premier-league-football/", - "post_title": "165. English Premier League Football", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.238240Z", - "index": 2014012301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 164, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/21/164-transcript-collaboration/", - "post_title": "164. Transcript Collaboration", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.231242Z", - "index": 2014012101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 163, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/15/163-skype-chat-with-my-brother/", - "post_title": "163. Skype Chat with My Brother", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.223244Z", - "index": 2014011501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 162, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/10/162-having-babies-vocabulary-a-male-perspective/", - "post_title": "162. Having Babies: Vocabulary / A Male Perspective", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.216244Z", - "index": 2014011001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 161, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2014/01/09/161-shes-having-a-baby/", - "post_title": "161. She\u2019s Having a Baby", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.208245Z", - "index": 2014010901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 160, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/12/24/160-the-a-to-z-of-christmas/", - "post_title": "160. The A to Z of Christmas", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.201248Z", - "index": 2013122401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 158, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/12/23/158-159-a-cup-of-christmas-tea-with-paul-taylor/", - "post_title": "158 & 159. A Cup of Christmas Tea with\u2026 Paul Taylor", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.193255Z", - "index": 2013122302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 157, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/12/23/157-a-cup-of-coffee-with-sarah-donnelly-part-2/", - "post_title": "157. A Cup of Coffee with\u2026 Sarah Donnelly (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.186252Z", - "index": 2013122301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 156, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/12/12/156-british-comedy-ali-g/", - "post_title": "156. British Comedy: Ali G", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.178254Z", - "index": 2013121201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 155, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/12/05/155-a-cup-of-coffee-with-sarah-donnelly/", - "post_title": "155. A Cup of Coffee with\u2026 Sarah Donnelly", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.171257Z", - "index": 2013120501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 154, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/11/27/154-british-slang-h-to-m/", - "post_title": "154. British Slang (H to M)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.163260Z", - "index": 2013112701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 153, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/11/20/153-the-talking-dog-story/", - "post_title": "153. The Talking Dog Story", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.156262Z", - "index": 2013112001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/11/14/doctor-who-episode-language-analysis/", - "post_title": "Doctor Who Episode \u2013 Language Analysis", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.148264Z", - "index": 2013111401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 152, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/11/06/152-im-leaving-podomatic-and-moving-to-audioboo-fm/", - "post_title": "152. I\u2019m leaving Podomatic\u2026 and moving to Audioboo.fm", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.141267Z", - "index": 2013110601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 151, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/10/25/151-google-questions/", - "post_title": "151. Google Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.133271Z", - "index": 2013102502, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 150, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/10/25/150-british-slang-d-to-g/", - "post_title": "150. British Slang (D to G)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.125272Z", - "index": 2013102501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 149, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/10/15/149-backing-up-into-the-cloud/", - "post_title": "149. Backing Up Into The Cloud", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.117276Z", - "index": 2013101501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 148, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/09/12/148-british-slang-a-to-c/", - "post_title": "148. British Slang (A to C)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.108278Z", - "index": 2013091201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 147, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/09/08/147-idioms-and-expressions-from-episodes-145-146/", - "post_title": "147. Idioms and Expressions from Episodes 145 & 146", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.101281Z", - "index": 2013090801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 146, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/09/05/146-nightmare-teaching-experiences-part-2/", - "post_title": "146. Nightmare Teaching Experiences (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.093287Z", - "index": 2013090501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 145, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/09/02/145-nightmare-teaching-experiences-part-1/", - "post_title": "145. Nightmare Teaching Experiences (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.086290Z", - "index": 2013090201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 144, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/08/29/144-the-chaos-of-english-pronunciation/", - "post_title": "144. The Chaos of English Pronunciation", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.078288Z", - "index": 2013082901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 143, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/08/19/143-a-cup-of-tea-with-robert-hoehn/", - "post_title": "143. A Cup of Tea with\u2026 Robert Hoehn", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.071295Z", - "index": 2013081901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 142, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/08/04/142-the-annual-general-meeting-part-2/", - "post_title": "142. The Annual General Meeting (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.063299Z", - "index": 2013080402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 141, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/08/04/141-the-annual-general-meeting-part-1/", - "post_title": "141. The Annual General Meeting (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.056301Z", - "index": 2013080401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 140, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/07/31/140-ghost-stories/", - "post_title": "140. Ghost Stories", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.048304Z", - "index": 2013073101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 139, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/07/09/139-hard-driving/", - "post_title": "139. Hard Driving", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.041307Z", - "index": 2013070901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 138, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/07/07/138-discussing-movies-part-2/", - "post_title": "138. Discussing Movies (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.033307Z", - "index": 2013070701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 137, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/29/137-discussing-movies-part-1/", - "post_title": "137. Discussing Movies (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.025310Z", - "index": 2013062901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 136, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/23/136-clycling-from-london-to-paris/", - "post_title": "136. Cycling from London to Paris", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.018312Z", - "index": 2013062301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 135, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/17/135-raining-animals/", - "post_title": "135. Raining Animals", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.010315Z", - "index": 2013061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 134, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/11/134-the-story-of-salvo/", - "post_title": "134. The Story of Salvo", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:26.003317Z", - "index": 2013061101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/04/old-comments/", - "post_title": "Old Comments Box Archive", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.995320Z", - "index": 2013060401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 133, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/06/01/133-hip-hop-lyric-analysis/", - "post_title": "133. Hip-Hop Lyric Analysis", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.988322Z", - "index": 2013060101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 132, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/05/17/132-pronouncing-ed-endings-with-added-romance-and-horror/", - "post_title": "132. Pronouncing ~ed Endings (with Added Romance and Horror)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.979325Z", - "index": 2013051701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 131, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/05/01/131-rickipedia/", - "post_title": "131. Rickipedia", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.972327Z", - "index": 2013050101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 130, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/04/17/130-a-cup-of-tea-with-sebastian-marx/", - "post_title": "130. A Cup of Tea with\u2026 Sebastian Marx", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.963330Z", - "index": 2013041701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 129, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/04/10/129-a-cup-of-tea-with-pierre-gaspard/", - "post_title": "129. A Cup of Tea with\u2026 Pierre Gaspard", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.956332Z", - "index": 2013041001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 128, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/04/07/795/", - "post_title": "128. Luke\u2019s Stand-Up Comedy Show", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.949331Z", - "index": 2013040701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/03/26/mini-podcast-feeling-nervous/", - "post_title": "Mini Podcast \u2013 Feeling Nervous", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.941332Z", - "index": 2013032601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 127, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/03/04/127-computer-games/", - "post_title": "127. Computer Games", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.934335Z", - "index": 2013030401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 126, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/02/20/126-your-emails-comments-and-questions/", - "post_title": "126. Your Emails, Comments and Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.925344Z", - "index": 2013022001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 125, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/02/14/125-the-pink-gorilla-story/", - "post_title": "125. The Pink Gorilla Story", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.918340Z", - "index": 2013021401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/01/23/another-award-winning-year/", - "post_title": "Another Award-Winning Year!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.910349Z", - "index": 2013012302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 124, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/01/23/124-james-bond/", - "post_title": "124. James Bond", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.903351Z", - "index": 2013012301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/01/21/downloading-problems/", - "post_title": "Thanks for Voting / Downloading Problems", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.895354Z", - "index": 2013012101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 123, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/01/20/123-whats-been-going-on/", - "post_title": "123. What\u2019s Been Going On?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.888356Z", - "index": 2013012001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2013/01/10/competition-time-again/", - "post_title": "Competition Time Again!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.880360Z", - "index": 2013011001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 122, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/12/20/122-the-end-of-the-world/", - "post_title": "122. The End of the World?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.873362Z", - "index": 2012122001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 121, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/12/10/121-americanisms-part-2/", - "post_title": "121: Americanisms (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.866358Z", - "index": 2012121001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 120, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/11/10/120-americanisms/", - "post_title": "120. Americanisms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.857366Z", - "index": 2012111001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 119, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/17/119-first-impressions-of-life-in-paris/", - "post_title": "119. First Impressions of Life in Paris", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.850363Z", - "index": 2012101702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 118, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/17/118-sick-in-japan/", - "post_title": "118. Sick in Japan", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.841366Z", - "index": 2012101701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 117, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/11/117-psychics-cold-reading-barnum-statements/", - "post_title": "117. Psychics / Cold Reading / Barnum Statements", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.833368Z", - "index": 2012101101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 116, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/10/116-could-it-be-you/", - "post_title": "116. Could it be you\u2026?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.826370Z", - "index": 2012101001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 115, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/04/115-a-chat-about-music/", - "post_title": "115. A Chat About Music", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.818377Z", - "index": 2012100401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 114, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/10/02/693/", - "post_title": "114. Twelve Natural Expressions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.810380Z", - "index": 2012100201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 112, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/09/20/vocabulary-review-episodes-1-11/", - "post_title": "112. Vocabulary Review \u2013 Episodes 1-11", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.745401Z", - "index": 2012092001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 111, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/09/17/thanks-for-your-comments/", - "post_title": "111. Thanks for your comments", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.738404Z", - "index": 2012091701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 110, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/09/12/a-letter-from-luke/", - "post_title": "110. A Letter from Luke", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.730406Z", - "index": 2012091201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 109, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/08/29/friday-night-banter-aka-the-slightly-drunk-episode/", - "post_title": "109. Friday Night Banter (aka The Slightly Drunk Episode)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.723409Z", - "index": 2012082901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/", - "post_title": "London Olympics 2012 (Video)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.715408Z", - "index": 2012080602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 108, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/08/06/in-bed-with-luke/", - "post_title": "108. In Bed with Luke", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.708413Z", - "index": 2012080601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 107, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/07/02/messing-around-with-accents-and-voices/", - "post_title": "107. Messing Around with Accents and Voices", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.700412Z", - "index": 2012070201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 106, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/06/29/brighton-fringe-festival-3/", - "post_title": "106. Brighton Fringe Festival #3", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.692419Z", - "index": 2012062901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 105, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/06/17/brighton-fringe-festival-2/", - "post_title": "105. Brighton Fringe Festival #2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.685421Z", - "index": 2012061701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 104, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/06/07/brighton-fringe-festival-1/", - "post_title": "104. Brighton Fringe Festival #1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.677423Z", - "index": 2012060701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 103, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/06/04/the-queen-and-the-royal-family/", - "post_title": "103. The Queen and The Royal Family", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.670426Z", - "index": 2012060401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 102, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/05/30/competition-winners/", - "post_title": "102. Competition Winners", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.662428Z", - "index": 2012053001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 101, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/05/17/a-note-from-luke/", - "post_title": "101. A Note from Luke", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.655431Z", - "index": 2012051701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 100, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/05/12/going-to-the-pub/", - "post_title": "100. Going To The Pub", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.647429Z", - "index": 2012051201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 99, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/29/the-rotary-sushi-bar-of-english/", - "post_title": "99. The Rotary Sushi Bar of English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.640431Z", - "index": 2012042901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 98, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/28/luke-vs-oliver-part-2/", - "post_title": "98. Luke vs Oliver (Part 2)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.632434Z", - "index": 2012042801, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 97, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/20/luke-vs-oliver-part-1/", - "post_title": "97. Luke vs Oliver (Part 1)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.625436Z", - "index": 2012042001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 94, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/12/competition-entries/", - "post_title": "94 \u2013 96. Competition Entries", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.617439Z", - "index": 2012041201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 93, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/11/weird-or-just-different/", - "post_title": "93. Weird\u2026 or just different?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.610441Z", - "index": 2012041101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 92, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/10/uk-royal-family-opinions-video-part-2-video-uploading-now-on-youtube/%20", - "post_title": "92. UK Royal Family Opinions \u2013 Video (Part 2) [TRANSCRIPT]", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.602443Z", - "index": 2012041004, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/10/competition-update/", - "post_title": "Competition Update", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.594446Z", - "index": 2012041003, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 91, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/10/the-a-to-z-of-random-thoughts/", - "post_title": "91. The A to Z of Random Thoughts", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.587448Z", - "index": 2012041002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 90, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/04/10/competition-phrasal-verbs-a-b-c/", - "post_title": "90. Competition + Phrasal Verbs A, B + C", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.580451Z", - "index": 2012041001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 89, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/13/a-day-in-the-life/", - "post_title": "89. A Day In The Life", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.573453Z", - "index": 2012031301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 88, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/12/how-to-play-the-drums/", - "post_title": "88. How To Play The Drums", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.564456Z", - "index": 2012031201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 87, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/07/6-idioms-and-6-phrasal-verbs/", - "post_title": "87. 6 Idioms and 6 Phrasal Verbs", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.557459Z", - "index": 2012030702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 86, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/07/criminal-law/", - "post_title": "86. Criminal Law", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.549462Z", - "index": 2012030701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 85, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/06/a-stand-up-comedy-gig/", - "post_title": "85. A Stand-up Comedy Gig", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.540470Z", - "index": 2012030602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 84, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/03/06/lukes-english-braincast/", - "post_title": "84. Luke\u2019s English Braincast", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.532468Z", - "index": 2012030601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 83, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/30/how-to-swear-in-british-english-very-rude-content/", - "post_title": "83. How to Swear in British English \u2013 VERY RUDE CONTENT", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.523474Z", - "index": 2012013003, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 82, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/30/voting-elections-politics-government/", - "post_title": "82. Voting / Elections / Politics / Government", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.515473Z", - "index": 2012013002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 81, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/30/what-makes-a-great-teacher/", - "post_title": "81. What Makes a Great Teacher?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.508479Z", - "index": 2012013001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 80, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/23/essential-social-english/", - "post_title": "80. Essential Social English", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.500477Z", - "index": 2012012304, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 79, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/23/family-arguments-and-debates/", - "post_title": "79. Family Arguments and Debates", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.493484Z", - "index": 2012012303, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 78, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/23/christmas-its-all-about-family/", - "post_title": "78. Christmas \u2013 It\u2019s all about Family", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.486486Z", - "index": 2012012302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 77, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/23/bear-vs-shark/", - "post_title": "77. Bear vs Shark", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.478489Z", - "index": 2012012301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 0, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2012/01/15/vote-for-lukes-english-podcast/", - "post_title": "VOTE FOR LUKE\u2019S ENGLISH PODCAST", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.470491Z", - "index": 2012011501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 76, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/11/07/mind-the-gap-how-to-use-the-london-underground/", - "post_title": "76. Mind The Gap \u2013 How to use the London Underground", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.462494Z", - "index": 2011110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 75, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/11/03/258/", - "post_title": "75. Not a Distraction!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.455496Z", - "index": 2011110302, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 74, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/11/03/uk-royal-family-opinions-english-interviews-in-london/", - "post_title": "74. UK Royal Family Opinions \u2013 English Interviews in London", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.447499Z", - "index": 2011110301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 73, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/steve-jobs/", - "post_title": "73. Steve Jobs", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.440501Z", - "index": 2011101408, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 72, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/the-cheese-episode/", - "post_title": "72. The Cheese Episode", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.433504Z", - "index": 2011101407, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 71, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/the-ice-cream-episode/", - "post_title": "71. The Ice Cream Episode", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.425507Z", - "index": 2011101406, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 70, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/language-and-music/", - "post_title": "70. Language and Music", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.418506Z", - "index": 2011101405, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 69, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/common-errors-typical-mistakes/", - "post_title": "69. Common Errors / Typical Mistakes", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.410511Z", - "index": 2011101404, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 68, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/childhood-growing-up-school-days-phrasal-verbs-and-expressions/", - "post_title": "68. Childhood / Growing Up / School Days \u2013 Phrasal Verbs and Expressions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.402514Z", - "index": 2011101403, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 67, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/cockney-london-accent/", - "post_title": "67. Cockney / London Accent", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.394518Z", - "index": 2011101402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 66, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/14/top-advice-for-learning-english-idioms-with-say-culture-shock/", - "post_title": "66. Top Advice for Learning English / Idioms with \u2018say\u2019 / Culture Shock", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.387521Z", - "index": 2011101401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 65, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", - "post_title": "65. London Video Interviews Pt 5", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.379523Z", - "index": 2011101211, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 64, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", - "post_title": "64. London Video Interviews Part 5 (Video)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.372524Z", - "index": 2011101210, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 63, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/german-and-british-cultural-identity-paco-erhard-interview-part-2/", - "post_title": "63. German and British Cultural Identity \u2013 Paco Erhard interview part 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.364522Z", - "index": 2011101209, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 62, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/learning-english-advice-from-a-german-comedian-living-in-london/", - "post_title": "62. Learning English \u2013 Advice from a German comedian living in London", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.356524Z", - "index": 2011101208, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 61, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/127-hours-hand-idioms/", - "post_title": "61. 127 Hours / \u2018Hand\u2019 Idioms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.349528Z", - "index": 2011101207, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 60, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/the-kings-speech-mouth-idioms/", - "post_title": "60. The King\u2019s Speech / \u2018Mouth\u2019 Idioms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.340529Z", - "index": 2011101206, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 59, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/billy-connolly-interview-more-scottish-accent/", - "post_title": "59. Billy Connolly Interview / More Scottish Accent", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.332533Z", - "index": 2011101205, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 58, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/scotland-scottish-accent/", - "post_title": "58. Scotland / Scottish Accent", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.325539Z", - "index": 2011101204, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 57, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/birmingham-accent-12-phrasal-verbs-with-the-letter-a/", - "post_title": "57. Birmingham Accent / 12 Phrasal Verbs with the letter \u2018A\u2019", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.317543Z", - "index": 2011101203, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 56, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/british-accents-and-dialects/", - "post_title": "56. British Accents and Dialects", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.310544Z", - "index": 2011101202, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 55, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/12/mini-podcasts-collection-1/", - "post_title": "55. Mini Podcasts Collection 1", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.302543Z", - "index": 2011101201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 54, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/halloween-guy-fawkes-night/", - "post_title": "54. Halloween / Guy Fawkes Night", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.295549Z", - "index": 2011101112, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 53, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/discussing-grammar-with-my-brother/", - "post_title": "53. Discussing Grammar with My Brother", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.287554Z", - "index": 2011101111, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 52, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/154/", - "post_title": "52. London Video Interviews Part 4", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.280550Z", - "index": 2011101110, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 51, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/luke-answers-your-emails-and-questions/", - "post_title": "51. Luke Answers Your Emails and Questions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.273552Z", - "index": 2011101109, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 50, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/good-things-come-to-those-who-wait/", - "post_title": "50. Good Things Come To Those Who Wait", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.265555Z", - "index": 2011101108, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 49, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/stand-up-comedy/", - "post_title": "49. Stand Up Comedy", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.258561Z", - "index": 2011101107, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 48, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/useful-expressions-for-travelling/", - "post_title": "48. Useful Expressions for Travelling", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.250559Z", - "index": 2011101106, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 47, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/travelling-in-vietnam/", - "post_title": "47. Travelling in Vietnam", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.243561Z", - "index": 2011101105, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 46, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/46-im-on-holiday-ill-be-back-in-a-couple-of-weeks/", - "post_title": "46. I\u2019m on Holiday! I\u2019ll be back in a couple of weeks", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.236564Z", - "index": 2011101104, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 45, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/luke-andys-crime-stories/", - "post_title": "45. Luke & Andy\u2019s Crime Stories", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.228571Z", - "index": 2011101103, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 44, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/telling-anecdotes/", - "post_title": "44. Telling Anecdotes", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.221569Z", - "index": 2011101102, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 43, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/10/11/notting-hill-carnival-video-frustration-out-takes/", - "post_title": "43. Notting Hill Carnival Video Frustration (Out-takes)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.213576Z", - "index": 2011101101, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 42, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", - "post_title": "42. London Video Interviews Pt 3 (Audio)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.205578Z", - "index": 2011032902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 41, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", - "post_title": "41. London Video Interviews Part 3 (Video)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.197581Z", - "index": 2011032901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 40, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2010/03/26/health-feeling-ill-phrasal-verbs-expressions/", - "post_title": "40. Health / Feeling ill \u2013 Phrasal Verbs & Expressions", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.190583Z", - "index": 2010032604, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 39, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2010/03/26/subtitles-in-videos/", - "post_title": "39. Subtitles in Videos (Video)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.183581Z", - "index": 2010032603, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 38, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2010/03/26/116/", - "post_title": "38. London Video Interviews Part 2 (Audio)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.175583Z", - "index": 2010032602, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 37, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2010/03/26/116/", - "post_title": "37. London Video Interviews Part 2 (Video)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:25.168586Z", - "index": 2010032601, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 33, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/15/money-money-money-12-phrasal-verbs-more/", - "post_title": "33. Money Money Money \u2013 12 Phrasal Verbs & more\u2026", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.943456Z", - "index": 2009111501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 32, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/14/doctor-who/", - "post_title": "32. Doctor Who", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.936456Z", - "index": 2009111403, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 31, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/14/hello-argument-sketch/", - "post_title": "31. Hello! / Argument Sketch", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.929459Z", - "index": 2009111402, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 30, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/14/the-mystery-continues/", - "post_title": "30. The Mystery Continues\u2026", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.922462Z", - "index": 2009111401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 29, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/12/mystery-story-narrative-tenses/", - "post_title": "29. Mystery Story / Narrative Tenses", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.914464Z", - "index": 2009111202, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 28, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/12/interview-with-a-native-speaker-the-weather/", - "post_title": "28. Interview with a Native Speaker \u2013 The Weather", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.907466Z", - "index": 2009111201, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 27, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/10/british-weather-lots-of-exciting-vocabulary/", - "post_title": "27. British Weather (Lots of exciting vocabulary!!!)", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.899465Z", - "index": 2009111002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 26, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/10/are-you-a-good-learner-of-english/", - "post_title": "26. Are you a good learner of English?", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.892471Z", - "index": 2009111001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 25, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/07/notting-hill-carnival-40-phrasal-verbs/", - "post_title": "25. Notting Hill Carnival \u2013 40 Phrasal Verbs", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.884469Z", - "index": 2009110702, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 24, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/11/07/music-idioms/", - "post_title": "24. Music Idioms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.876477Z", - "index": 2009110701, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 23, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/20/summer-music-festivals/", - "post_title": "23. Summer Music Festivals", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.869479Z", - "index": 2009102003, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 22, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/20/full-interview-with-vicky-from-china/", - "post_title": "22. Full Interview with Vicky from China", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.860483Z", - "index": 2009102002, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 21, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/20/learning-english-with-podcasts-advice-from-a-chinese-student-at-oxford-university/", - "post_title": "21. Learning English with Podcasts \u2013 Advice from a Chinese student at Oxford University", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.853485Z", - "index": 2009102001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 20, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/beware-of-bad-pronunciation/", - "post_title": "20. Beware of Bad Pronunciation", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.844482Z", - "index": 2009101913, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 19, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/passive-verb-forms/", - "post_title": "19. Passive Verb Forms", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.837490Z", - "index": 2009101912, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 18, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/46/", - "post_title": "18. 10 More Phrasal Verbs", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.829492Z", - "index": 2009101911, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 17, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/hello-to-my-listeners-around-the-world/", - "post_title": "17. Hello To My Listeners Around The World", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.822494Z", - "index": 2009101910, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 14, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/episode-10-british-and-american-pronunciation/", - "post_title": "14. British & American Pronunciation", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.658549Z", - "index": 2009101907, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 13, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/video-podcast-i-like-it/", - "post_title": "13. Video Podcast \u2013 I LIKE IT!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.651550Z", - "index": 2009101906, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 12, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-3/", - "post_title": "12. Extra Podcast \u2013 Quick Hello 3", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.643553Z", - "index": 2009101905, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 11, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/episode-9-men-vs-women/", - "post_title": "11. Men vs Women", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.636555Z", - "index": 2009101904, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 10, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-2/", - "post_title": "10. Extra Podcast \u2013 Quick Hello 2", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.628553Z", - "index": 2009101903, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 9, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/episode-8-travelling-in-india/", - "post_title": "9. Travelling in India", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.621555Z", - "index": 2009101902, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 8, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/10/19/episode-7-dating-and-relationships/", - "post_title": "8. Dating and Relationships", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.613562Z", - "index": 2009101901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 7, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/30/episode-6-susan-boyle/", - "post_title": "7. Susan Boyle", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.606565Z", - "index": 2009043001, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 6, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/24/episode-5-vampires/", - "post_title": "6. Vampires!", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.598563Z", - "index": 2009042401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 5, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/23/episode-4-joaquin-phoenix/", - "post_title": "5. Joaquin Phoenix", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.590565Z", - "index": 2009042301, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 4, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/19/extra-podcast-quick-hello/", - "post_title": "4. Extra Podcast \u2013 Quick Hello", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.583573Z", - "index": 2009041901, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 3, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/15/episode-3-musicthe-beatles/", - "post_title": "3. Music/The Beatles", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.575575Z", - "index": 2009041501, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - }, - { - "episode": 2, - "date": "2000-01-01T00:00:00+00:00", - "url": "https://teacherluke.co.uk/2009/04/14/episode-2-easter/", - "post_title": "2. Easter / Interview with my Dad / Language Focus: Adverbials", - "post_type": "", - "audios": null, - "parsing_utc": "2021-10-14T07:35:24.567577Z", - "index": 2009041401, - "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" - } -] \ No newline at end of file + { + "episode": 733, + "date": "2021-08-03T18:12:02+02:00", + "url": "https://teacherluke.co.uk/2021/08/03/733-a-summer-ramble/", + "post_title": "733. A Summer Ramble", + "post_type": "AUDIO", + "audios": [ + ["https://traffic.libsyn.com/secure/teacherluke/733._A_Summer_Ramble.mp3"] + ], + "parsing_utc": "2021-10-14T07:35:31.597990Z", + "index": 2021080301, + "admin_note": "" + }, + { + "episode": 714, + "date": "2021-04-11T23:32:42+02:00", + "url": "https://teacherluke.co.uk/2021/04/11/714-robin-from-hamburg-%F0%9F%87%A9%F0%9F%87%AA-wisbolep-runner-up/", + "post_title": "714. Robin from Hamburg (WISBOLEP Runner-Up)", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/714._Robin_from_Hamburg__WISBOLEP_Runner-Up.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.361072Z", + "index": 2021041101, + "admin_note": "" + }, + { + "episode": 711, + "date": "2021-03-26T15:06:43+01:00", + "url": "https://teacherluke.co.uk/2021/03/26/711-william-from-france-%F0%9F%87%AB%F0%9F%87%B7-wisbolep-runner-up/", + "post_title": "711. William from France (WISBOLEP Runner-UP)", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/711._William_from_France__WISBOLEP_Runner-UP.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.264099Z", + "index": 2021032601, + "admin_note": "" + }, + { + "episode": 703, + "date": "2021-02-03T18:33:04+01:00", + "url": "https://teacherluke.co.uk/2021/02/03/703-walaa-from-syria-wisbolep-competition-winner-%F0%9F%8F%86/", + "post_title": "703. Walaa from Syria \u2013 WISBOLEP Competition Winner", + "post_type": "AUDIO", + "audios": [ + [ + "https://traffic.libsyn.com/secure/teacherluke/703._Walaa_from_Syria_-_WISBOLEP_Competition_Winner_.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:31.140983Z", + "index": 2021020301, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-08-26T07:30:24+02:00", + "url": "https://teacherluke.co.uk/2017/08/26/website-only-a-history-of-british-pop-a-musical-tour-through-james-vinyl-collection/", + "post_title": "[Website only] A History of British Pop \u2013 A Musical Tour through James\u2019 Vinyl Collection", + "post_type": "TEXT", + "audios": [], + "parsing_utc": "2021-10-14T07:35:29.221311Z", + "index": 2017082601, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-05-26T12:46:40+02:00", + "url": "https://teacherluke.co.uk/2017/05/26/i-was-invited-onto-the-english-across-the-pond-podcast/", + "post_title": "I was invited onto the \u201cEnglish Across The Pond\u201d Podcast", + "post_type": "TEXT", + "audios": [], + "parsing_utc": "2021-10-14T07:35:28.963595Z", + "index": 2017052601, + "admin_note": "" + }, + { + "episode": 0, + "date": "2017-03-11T18:45:49+01:00", + "url": "https://teacherluke.co.uk/2017/03/11/lep-on-zep-my-recent-interview-on-zdeneks-english-podcast/", + "post_title": "LEP on ZEP \u2013 My recent interview on Zdenek\u2019s English Podcast", + "post_type": "AUDIO", + "audios": [ + [ + "https://audioboom.com/posts/5602875-episode-166-luke-back-on-zep-part-1.mp3" + ], + [ + "https://audioboom.com/posts/5621870-episode-167-luke-back-on-zep-part-2.mp3" + ], + [ + "https://audioboom.com/posts/5627735-episode-168-luke-back-on-zep-part-3.mp3" + ], + [ + "https://audioboom.com/posts/5678762-episode-169-luke-back-on-zep-part-4.mp3" + ], + [ + "https://audioboom.com/posts/5695159-episode-170-luke-back-on-zep-part-5-analysis.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:28.727674Z", + "index": 2017031101, + "admin_note": "" + }, + { + "episode": 370, + "date": "2016-08-07T15:30:38+02:00", + "url": "https://teacherluke.co.uk/2016/08/07/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis/", + "post_title": "370. In Conversation with Rob Ager from Liverpool (PART 1: Life in Liverpool / Interest in Film Analysis)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/370-in-conversation-with-rob-ager-from-liverpool-part-1-life-in-liverpool-interest-in-film-analysis.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:28.165853Z", + "index": 2016080701, + "admin_note": "" + }, + { + "episode": 305, + "date": "2015-10-07T09:25:39+02:00", + "url": "https://teacherluke.co.uk/2015/10/22/305-back-to-the-future-part-2/", + "post_title": "305. Back To The Future (Part 2)", + "post_type": "AUDIO", + "audios": [ + ["http://traffic.libsyn.com/teacherluke/300-2-episode-300-part-2.mp3"] + ], + "parsing_utc": "2021-10-14T07:35:27.557253Z", + "index": 2015102201, + "admin_note": "" + }, + { + "episode": 304, + "date": "2015-10-07T09:21:24+02:00", + "url": "https://teacherluke.co.uk/2015/10/21/304-back-to-the-future-part-1/", + "post_title": "304. Back To The Future (Part 1)", + "post_type": "AUDIO", + "audios": [ + ["http://traffic.libsyn.com/teacherluke/300-1-episode-300-part-1.mp3"] + ], + "parsing_utc": "2021-10-14T07:35:27.477279Z", + "index": 2015102101, + "admin_note": "" + }, + { + "episode": 193, + "date": "2014-06-30T15:37:44+02:00", + "url": "https://teacherluke.co.uk/2014/06/30/193-culture-shock-life-in-london-pt-2/", + "post_title": "193. Culture Shock: Life in London (Pt.2)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/193-culture-shock-life-in-london-part-2.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:26.476157Z", + "index": 2014063002, + "admin_note": "" + }, + { + "episode": 113, + "date": "2012-09-27T11:49:36+02:00", + "url": "http://teacherluke.wordpress.com/2012/09/27/113-setting-the-world-to-rights/", + "post_title": "113. Setting The World To Rights", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/113-setting-the-world-to-rights.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:25.753394Z", + "index": 2012092701, + "admin_note": "" + }, + { + "episode": 36, + "date": "2010-03-25T22:59:36+01:00", + "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", + "post_title": "36. London Video Interviews \u2013 Part 1 (Audio)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:25.059621Z", + "index": 2010032502, + "admin_note": "" + }, + { + "episode": 35, + "date": "2010-03-25T22:59:36+01:00", + "url": "https://teacherluke.co.uk/2010/03/25/london-video-interviews-pt-1/", + "post_title": "35. London Video Interviews \u2013 Part 1 (Video)", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/36-london-video-interviews-pt-1-audio-only.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.951658Z", + "index": 2010032501, + "admin_note": "" + }, + { + "episode": 16, + "date": "2009-10-19T21:21:43+02:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-11-michael-jackson/", + "post_title": "16. Michael Jackson", + "post_type": "AUDIO", + "audios": [ + ["http://traffic.libsyn.com/teacherluke/16-michael-jackson.mp3"] + ], + "parsing_utc": "2021-10-14T07:35:24.719523Z", + "index": 2009101909, + "admin_note": "" + }, + { + "episode": 15, + "date": "2009-10-19T21:14:49+02:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-12-phrasal-verbs/", + "post_title": "15. Extra Podcast \u2013 12 Phrasal Verbs", + "post_type": "AUDIO", + "audios": [ + [ + "http://traffic.libsyn.com/teacherluke/15-extra-podcast-12-phrasal-verbs.mp3" + ] + ], + "parsing_utc": "2021-10-14T07:35:24.665541Z", + "index": 2009101908, + "admin_note": "" + }, + { + "episode": 1, + "date": "2009-04-12T15:23:33+02:00", + "url": "https://teacherluke.co.uk/2009/04/12/episode-1-introduction/", + "post_title": "1. Introduction", + "post_type": "AUDIO", + "audios": [["http://traffic.libsyn.com/teacherluke/1-introduction.mp3"]], + "parsing_utc": "2021-10-14T07:35:24.499596Z", + "index": 2009041201, + "admin_note": "" + }, + { + "episode": 732, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/29/732-christian-from-canguro-english-returns/", + "post_title": "732. Christian from Canguro English returns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.589992Z", + "index": 2021072901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 731, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/25/731-beatles-song-lyrics-idioms-expressions-with-antony-rotunno/", + "post_title": "731. Beatles Song Lyrics / Idioms & Expressions (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.582996Z", + "index": 2021072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 730, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/19/730-marie-connolly-returns-2-songs/", + "post_title": "730. Marie Connolly Returns (+ 2 songs)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.574997Z", + "index": 2021071901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 729, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/13/729-toefl-and-the-duolingo-english-test-with-josh-macpherson-from-tstprep-com/", + "post_title": "729. TOEFL and the Duolingo English Test (with Josh MacPherson from TSTPrep.com)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.567001Z", + "index": 2021071301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 728, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/07/05/728-english-with-rob-games-music-jingles/", + "post_title": "728. English with Rob / Games, Music & Jingles", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.559003Z", + "index": 2021070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 727, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/30/727-describing-john-lennon-adjectives-of-personality-j-z-with-antony-rotunno/", + "post_title": "727. Describing John Lennon / Adjectives of Personality J-Z (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.551006Z", + "index": 2021063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 726, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/26/726-describing-john-lennon-adjectives-of-personality-a-i-with-antony-rotunno/", + "post_title": "726. Describing John Lennon / Adjectives of Personality A-I (with Antony Rotunno)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.541009Z", + "index": 2021062601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/22/bonus-euro2020-swapcast-with-martin-johnston-rnr-zdenek-lukas-zep/", + "post_title": "BONUS: EURO2020 Swapcast with Martin Johnston (RnR) & Zdenek Lukas (ZEP) Parts 1 & 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.530012Z", + "index": 2021062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 725, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/17/725-fun-games-for-learning-english-with-vickie-kelty/", + "post_title": "725. Fun & Games for Learning English with Vickie Kelty", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.523015Z", + "index": 2021061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/16/unboxing-my-shiny-youtube-award-for-100000-subscribers-audio-and-video-versions/", + "post_title": "Unboxing my Shiny YouTube Award for 100,000 Subscribers (Audio and Video Versions)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.508024Z", + "index": 2021061601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 724, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/11/724-the-mountain-short-story-video/", + "post_title": "724. The Mountain (Short Story) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.515022Z", + "index": 2021061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 723, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/06/04/723-bahar-from-iran-wisbolep-runner-up/", + "post_title": "723. Bahar from Iran (WISBOLEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.500023Z", + "index": 2021060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 722, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/29/722-discussing-john-lennon-with-antony-rotunno/", + "post_title": "722. Discussing John Lennon with Antony Rotunno", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.492024Z", + "index": 2021052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 721, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/24/721-collins-dictionary-word-quizzes-with-fred-eyangoh/", + "post_title": "721. Collins Dictionary Word Quizzes / Confusing Words with Fred Eyangoh", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.485028Z", + "index": 2021052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 720, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/18/720-how-fred-learns-vocabulary-with-the-new-york-times-spelling-bee-with-fred-eyangoh/", + "post_title": "720. How Fred Learns Vocabulary with the New York Times Spelling Bee (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.477031Z", + "index": 2021051801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 719, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/10/719-amber-paul-are-on-the-podcast/", + "post_title": "719. Amber & Paul are on the Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.469033Z", + "index": 2021051001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 718, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/05/03/718-michael-the-shaman-wisbloep-runner-up/", + "post_title": "718. Michael the Shaman (WISBLOEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.461035Z", + "index": 2021050301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 717, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/27/717-gills-book-club-one-two-three-four-the-beatles-in-time-by-craig-brown/", + "post_title": "717. Gill\u2019s Book Club: \u201cOne Two Three Four \u2013 The Beatles In Time\u201d by Craig Brown", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.454042Z", + "index": 2021042701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 716, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/22/716-interview-with-a-pop-star-from-the-1960s-megan-brady-from-the-applejacks/", + "post_title": "716. Interview with a Pop Star from the 1960s \u2013 Megan Brady from The Applejacks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.446040Z", + "index": 2021042201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 715, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/16/715-catching-up-with-craig-wealand-lep-airc-swapcast/", + "post_title": "715. Catching up with Craig Wealand [LEP/AIRC Swapcast]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.439042Z", + "index": 2021041601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 713, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/07/713-lucky-dip-with-paul-taylor/", + "post_title": "713. Lucky Dip with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.354075Z", + "index": 2021040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 712, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/04/03/712-a-chat-with-charlie-baxter/", + "post_title": "712. A Chat with Charlie Baxter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.345073Z", + "index": 2021040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 710, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/17/710-the-umbrella-man-by-roald-dahl-short-story/", + "post_title": "710. The Umbrella Man by Roald Dahl (Short Story)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.257102Z", + "index": 2021031701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 709, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/11/709-the-stoicism-of-groundhog-day-with-mum/", + "post_title": "709. The Stoicism of Groundhog Day (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.249105Z", + "index": 2021031101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 708, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/05/708-tasha-liu-from-china-wisbolep-runner-up/", + "post_title": "708. Tasha Liu from China (WISBOLEP Runner-Up)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.242107Z", + "index": 2021030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 707, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/03/01/707-2-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", + "post_title": "707. [2/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.234114Z", + "index": 2021030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 706, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/27/706-1-2-lets-play-another-text-adventure-game-zombolocaust-by-peter-carlson/", + "post_title": "706. [1/2] Let\u2019s Play Another Text Adventure Game \u2013 \u201cZombolocaust\u201d by Peter Carlson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.226119Z", + "index": 2021022701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 705, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/24/705-kate-billington-returns-and-she-brought-cake/", + "post_title": "705. Kate Billington Returns (and she brought cake)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.218117Z", + "index": 2021022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 704, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/02/11/704-the-rick-thompson-report-brexit-update-february-2021/", + "post_title": "704. The Rick Thompson Report: Brexit Update (February 2021)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.210124Z", + "index": 2021021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 702, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/25/702-emergency-questions-with-james/", + "post_title": "702. Emergency Questions (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.132981Z", + "index": 2021012501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 701, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/19/701-legal-english-with-louise-kulbicki/", + "post_title": "701. Legal English with Louise Kulbicki", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.124988Z", + "index": 2021011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 700, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/13/700-marooned-with-my-music-luke-thompson/", + "post_title": "700. Marooned With My Music: Luke Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.117986Z", + "index": 2021011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 699, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2021/01/07/699-welcome-back-to-lukes-english-podcast-faq-january-2021/", + "post_title": "699. Welcome (back) to Luke\u2019s English Podcast / FAQ (January 2021)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.109993Z", + "index": 2021010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 698, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/23/698-paul-is-on-the-podcast-random-questions-with-paul-taylor/", + "post_title": "698. Paul is on the Podcast / Random Questions with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.102995Z", + "index": 2020122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 697, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/18/697-11-christmas-cracker-jokes-for-2020-explained/", + "post_title": "697. 11 Christmas Cracker Jokes for 2020, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.094998Z", + "index": 2020121801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 696, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/16/696-wisbolep-competition-results-ramble/", + "post_title": "696. WISBOLEP Competition Results + RAMBLE", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.088000Z", + "index": 2020121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 695, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/11/695-pronunciation-pragmatics-procrastination-with-emma/", + "post_title": "695. Pronunciation, Pragmatics & Procrastination with Emma", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.080003Z", + "index": 2020121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 694, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/12/07/694-the-crown-the-royal-family-a-royal-ramble-with-my-wife/", + "post_title": "694. The Crown / The Royal Family (A Royal Ramble with My Wife)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.073005Z", + "index": 2020120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 693, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/30/693-english-with-lucy-a-conversation-with-lucy-earl/", + "post_title": "693. English With Lucy / A Conversation with Lucy Earl", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.066004Z", + "index": 2020113001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 692, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/23/wisbolep/", + "post_title": "692. WISBOLEP Competition Entries \u2013 Listen & Vote!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.058011Z", + "index": 2020112301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 691, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/18/691-jerome-butler-dialect-coach/", + "post_title": "691. Jerome Butler \u2013 Dialect Coach", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.051008Z", + "index": 2020111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 690, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/12/690-urban-vs-rural-living-abroad-cultural-differences-with-cara-leopold/", + "post_title": "690. Urban vs Rural / Living Abroad / Cultural Differences (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.043015Z", + "index": 2020111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 689, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/06/689-baking-cakes-telling-jokes-speaking-chinese-with-kate-billington/", + "post_title": "689. Baking Cakes, Telling Jokes & Speaking Chinese with Kate Billington", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.036017Z", + "index": 2020110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 688, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/11/02/689-sean-connery/", + "post_title": "688. Sean Connery", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.028015Z", + "index": 2020110201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 687, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/29/687-wisbolep-problem-polite-requests-an-inspiring-email-fly-me-to-the-moon/", + "post_title": "687. WISBOLEP Problem / Polite Requests / An Inspiring Email / Fly Me To the Moon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.020023Z", + "index": 2020102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 686, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/27/686-christian-from-canguro-english/", + "post_title": "686. Christian from Canguro English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.012025Z", + "index": 2020102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 685, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/21/685-raising-bilingual-children-1-alex-and-his-daughter-alice-in-moscow/", + "post_title": "685. Raising Bilingual Children [1] Alex and his daughter Alice, in Moscow", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:31.004028Z", + "index": 2020102101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 684, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/15/684-chasing-the-tangent-train-with-elspeth-graty/", + "post_title": "684. Chasing the Tangent Train with Elspeth Graty", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.997030Z", + "index": 2020101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 683, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/10/09/683-feelgood-stories-of-flirting-with-marie-connolly/", + "post_title": "683. Feelgood Stories of Flirting with Marie Connolly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.989032Z", + "index": 2020100901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 682, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/25/682-key-features-of-english-accents-explained/", + "post_title": "682. Key Features of English Accents, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.982031Z", + "index": 2020092501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 681, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/16/681-new-competition-why-i-should-be-on-lep-wisbolep-story-the-first-time-i-said-fck/", + "post_title": "681. New Competition: Why I Should Be On LEP (WISBOLEP) / Story: The First Time I Said F*ck", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.974679Z", + "index": 2020091601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 680, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/09/680-park-life-a-year-in-the-wildlife-of-an-urban-park-by-rick-thompson-animal-collective-nouns/", + "post_title": "680. Park Life \u2013 A Year in The Wildlife Of An Urban Park (by Rick Thompson) / Animal Collective Nouns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.966683Z", + "index": 2020090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 679, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/09/04/679-gills-book-club-a-gentleman-in-moscow/", + "post_title": "679. Gill\u2019s Book Club: A Gentleman In Moscow", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.958691Z", + "index": 2020090401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 678, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/28/678-the-vintage-furniture-trade-in-london-with-howard-roach/", + "post_title": "678. The Vintage Furniture Trade in London (with Howard Roach)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.951692Z", + "index": 2020082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 677, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/21/677-a-post-holiday-ramble-holiday-vocab-stories/", + "post_title": "677. A Post-Holiday Ramble / Holiday Vocab / Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.943690Z", + "index": 2020082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 676, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/08/01/676-david-crystal-lets-talk-how-english-conversation-works/", + "post_title": "676. David Crystal: Let\u2019s Talk \u2013 How English Conversation Works", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.936692Z", + "index": 2020080101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 675, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/24/675-an-unplanned-pre-holiday-ramble-july-2020/", + "post_title": "675. An Unplanned Pre-Holiday Ramble (July 2020)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.928695Z", + "index": 2020072401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 674, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/16/674-19-amusing-insurance-claims-car-crash-vocabulary/", + "post_title": "674. 19 Amusing Insurance Claims / Car Crash Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.921697Z", + "index": 2020071601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 673, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/07/673-conspiracies-ufos-life-hacks-with-james/", + "post_title": "673. Conspiracies / UFOs / Life Hacks (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.913704Z", + "index": 2020070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 672, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/07/03/672-the-rick-thompson-report-covid-brexit-blm-july-2020/", + "post_title": "672. The Rick Thompson Report: COVID / BREXIT / BLM (July 2020)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.906707Z", + "index": 2020070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 671, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/30/671-aussie-english-with-pete-smissen/", + "post_title": "671. Aussie English with Pete Smissen", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.898705Z", + "index": 2020063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 670, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/22/670-language-learning-with-james-harris/", + "post_title": "670. Language Learning with James Harris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.891711Z", + "index": 2020062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 669, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/18/669-how-to-learn-english/", + "post_title": "669. How to Learn English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.883710Z", + "index": 2020061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 668, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/13/668-lep-live-ask-me-anything-hang-out-with-luke-audio-version/", + "post_title": "668. LEP LIVE! Ask Me Anything / Hang Out With Luke (AUDIO VERSION)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.876716Z", + "index": 2020061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 667, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/08/667-four-way-call-with-alex-moz-paul/", + "post_title": "667. Four Way Call (with Alex, Moz & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.868719Z", + "index": 2020060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/06/07/announcement-im-doing-a-youtube-live-stream-on-wednesday-10-june-at-3pm-cet/", + "post_title": "Announcement: I\u2019m doing a YouTube Live Stream on Wednesday 10 June at 3PM CET", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.860723Z", + "index": 2020060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/29/666-part-3-favourite-scary-films-with-james/", + "post_title": "666. [Part 3] Favourite Scary Films (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.853719Z", + "index": 2020052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/27/666-part-2-frightening-experiences-with-james/", + "post_title": "666. [Part 2] Frightening Experiences (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.844728Z", + "index": 2020052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 666, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/25/666-part-1-the-number-of-the-beast-scary-music-black-sabbath-with-james/", + "post_title": "666. [Part 1] The Number of the Beast / Scary Music / Black Sabbath (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.837729Z", + "index": 2020052501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 665, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/20/665-a-chinwag-with-sebastian-marx-18-british-slang-phrases-that-americans-dont-understand/", + "post_title": "665. A Chinwag with Sebastian Marx / 18+ British slang phrases that Americans don\u2019t understand", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.829727Z", + "index": 2020052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 664, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/15/664-lockdown-ramble-with-my-wife/", + "post_title": "664. Lockdown Ramble with My Wife", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.822734Z", + "index": 2020051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 663, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/05/04/663-the-lockdown-lying-game-with-amber-paul/", + "post_title": "663. The Lockdown Lying Game with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.813737Z", + "index": 2020050401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 662, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/29/662-catching-up-with-amber-paul-10-surviving-lockdown-with-kids/", + "post_title": "662. Catching Up with Amber & Paul #10 (Surviving Lockdown with Kids)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.806739Z", + "index": 2020042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 661, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/17/661-an-englishman-in-los-angeles-headhunted-by-netflix-divided-by-a-common-language-with-oli-thompson/", + "post_title": "661. An Englishman in Los Angeles (with Oli)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.799738Z", + "index": 2020041701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 660, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/14/660-using-tv-series-films-to-improve-your-english/", + "post_title": "660. Using TV Series & Films to Improve Your English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.791739Z", + "index": 2020041401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 659, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/11/659-lockdown-chat-with-cara-leopold/", + "post_title": "659. Lockdown Chat with Cara Leopold", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.784742Z", + "index": 2020041101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 658, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/08/658-2-2-why-do-brits-sing-with-american-accents/", + "post_title": "658. [2/2] Why do Brits sing with American accents?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.776744Z", + "index": 2020040801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 657, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/04/07/657-1-2-why-do-brits-sing-with-american-accents/", + "post_title": "657. [1/2] Why do Brits sing with American accents?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.769747Z", + "index": 2020040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 656, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/31/656-british-comedy-karl-pilkingtons-monkey-news-the-ricky-gervais-show/", + "post_title": "656. British Comedy: Karl Pilkington\u2019s Monkey News / The Ricky Gervais Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.761749Z", + "index": 2020033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 655, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/28/655-coping-with-isolation-describing-feelings-and-emotions-vocabulary-experiences/", + "post_title": "655. Coping with Isolation / Describing Feelings and Emotions \u2013 Vocabulary & Experiences", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.754751Z", + "index": 2020032801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 654, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/23/654-computer-based-ielts-stories-about-the-first-time-with-jessica-beck-from-ielts-energy-podcast/", + "post_title": "654. Computer-based IELTS / Stories about The First Time\u2026 (with Jessica Beck from IELTS Energy Podcast)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.746754Z", + "index": 2020032301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 653, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/20/653-gills-book-club-the-five-the-untold-lives-of-the-women-killed-by-jack-the-ripper-by-hallie-rubenhold/", + "post_title": "653. Gill\u2019s Book Club \u2013 \u201cThe Five: The Untold Lives of the Women Killed by Jack the Ripper\u201d by Hallie Rubenhold / How to read books to improve your English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.739757Z", + "index": 2020032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 652, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/13/652-the-rick-thompson-report-coronavirus-covid-19/", + "post_title": "652. The Rick Thompson Report: Coronavirus (COVID-19)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.730760Z", + "index": 2020031302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 651, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/13/651-coronavirus-covid-19-vocabulary/", + "post_title": "651. Coronavirus (COVID-19) Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.723762Z", + "index": 2020031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 650, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/10/650-british-music-jungle-with-james/", + "post_title": "650. British Music: Jungle (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.716769Z", + "index": 2020031001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 649, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/03/05/649-an-unedited-ramble-march-2020-never-explain-never-apologise-no-stress-method-to-the-madness-3-songs-on-guitar/", + "post_title": "649. An Unedited Ramble (March 2020) Never Explain, Never Apologise? / No Stress / Method To The Madness / 3 Songs on Guitar", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.707772Z", + "index": 2020030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 648, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/24/648-ian-moore-returns/", + "post_title": "648. Ian Moore Returns", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.700775Z", + "index": 2020022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 647, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/21/647-british-comedy-alan-partridge-part-6/", + "post_title": "647. British Comedy: Alan Partridge (Part 6)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.692777Z", + "index": 2020022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 646, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/20/646-british-comedy-alan-partridge-part-5/", + "post_title": "646. British Comedy: Alan Partridge (Part 5)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.685779Z", + "index": 2020022001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 645, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/17/645-british-comedy-alan-partridge-part-4/", + "post_title": "645. British Comedy: Alan Partridge (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.677782Z", + "index": 2020021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 644, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/14/644-the-rick-thompson-report-is-brexit-done/", + "post_title": "644. The Rick Thompson Report: Is Brexit Done?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.670784Z", + "index": 2020021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 643, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/11/643-the-intercultural-communication-dance-with-sherwood-fleming/", + "post_title": "643. The Intercultural Communication Dance with Sherwood Fleming", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.662786Z", + "index": 2020021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 642, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/06/642-the-lying-game-returns-with-amber-paul/", + "post_title": "642. The Lying Game Returns (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.655789Z", + "index": 2020020601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 641, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/02/02/641-catching-up-with-amber-paul-9/", + "post_title": "641. Catching Up with Amber & Paul #9", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.647791Z", + "index": 2020020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 640, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/28/640-ielts-speaking-success-with-keith-ohare/", + "post_title": "640. IELTS Speaking Success with Keith O\u2019Hare", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.640794Z", + "index": 2020012801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 639, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/23/639-3-quintessentially-british-books-that-you-might-not-know-about-with-mum/", + "post_title": "639. 3 Quintessentially British Books (that you might not know about) with Mum", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.632792Z", + "index": 2020012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 638, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/19/638-3-quintessentially-british-things-that-you-might-not-know-about-with-dad/", + "post_title": "638. 3 Quintessentially British Things (that you might not know about) with Dad", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.624799Z", + "index": 2020011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 637, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/14/637-5-quintessentially-english-things-that-you-might-not-know-about-with-james/", + "post_title": "637. 5 Quintessentially English Things (that you might not know about) with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.617797Z", + "index": 2020011401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 636, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/10/636-james-luke-discuss-star-wars-ix-spoilers-final-star-wars-episode-ever/", + "post_title": "636. James & Luke Discuss Star Wars IX (SPOILERS) Final Star Wars Episode Ever?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.609804Z", + "index": 2020011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 635, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/08/635-a-new-year-ramble-for-2020-part-2-motivation-new-years-rules-bilingual-daughter-neil-innes/", + "post_title": "635. A New Year Ramble for 2020 (Part 2) Motivation / New Year\u2019s Rules / Bilingual Daughter / Neil Innes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.602806Z", + "index": 2020010801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 634, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2020/01/06/634-a-new-year-ramble-for-2020-part-1/", + "post_title": "634. A New Year Ramble for 2020 (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.594809Z", + "index": 2020010601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 633, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/18/633-star-wars-ix-the-rise-of-skywalker-spoiler-review/", + "post_title": "633. Star Wars IX: The Rise of Skywalker (SPOILER REVIEW)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.587807Z", + "index": 2019121801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 632, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/17/632-star-wars-ix-the-rise-of-skywalker-no-spoilers/", + "post_title": "632. Star Wars IX: The Rise of Skywalker (No Spoilers!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.579814Z", + "index": 2019121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 631, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/16/631-29-awful-christmas-jokes-explained/", + "post_title": "631. 29 Awful Christmas Jokes, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.571817Z", + "index": 2019121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 630, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/09/630-the-english-guy-with-a-sitcom-on-japanese-tv-with-bj-fox/", + "post_title": "630. The English Guy with a Sitcom on Japanese TV (with BJ Fox)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.563820Z", + "index": 2019120901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 629, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/12/02/629-do-you-ever-with-james-strange-habits-funny-observations/", + "post_title": "629. Do you ever \u2026 ? (with James) Strange Habits & Funny Observations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.556821Z", + "index": 2019120201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 628, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/26/628-oasis-with-james/", + "post_title": "628. OASIS (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.547820Z", + "index": 2019112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 627, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/19/627-eminas-long-journey-to-english-proficiency/", + "post_title": "627. Emina\u2019s Long Journey to English Proficiency", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.539822Z", + "index": 2019111901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 626, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/13/626-the-rick-thompson-report-boris-johnsons-brexit-deal-general-election-football/", + "post_title": "626. The Rick Thompson Report: Boris Johnson\u2019s Brexit Deal / General Election / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.529830Z", + "index": 2019111302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 625, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/13/625-88-english-expressions-that-will-confuse-everyone-part-2/", + "post_title": "625. 88 English expressions that will confuse everyone (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.522833Z", + "index": 2019111301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 624, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/11/07/624-88-english-expressions-that-will-confuse-everyone-part-1/", + "post_title": "624. 88 English expressions that will confuse everyone (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.514836Z", + "index": 2019110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 623, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/29/623-13-terrible-jokes-explained/", + "post_title": "623. 13 Terrible Jokes, Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.507837Z", + "index": 2019102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 622, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/22/422-general-ramble-oct-2019-learning-english-politics-recording-setup-book-recommendation-beatles-star-wars-bill-bailey/", + "post_title": "622. General Ramble (Oct 2019) Learning English / Politics / Recording Setup / Book Recommendation / Beatles / Star Wars / Bill Bailey", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.500841Z", + "index": 2019102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 621, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/14/621-british-tv-dragons-den-part-3-discord-in-the-den/", + "post_title": "621. British TV: Dragons\u2019 Den (Part 3) Discord in the Den", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.492842Z", + "index": 2019101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 620, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/11/620-british-tv-dragons-den-part-2-negotiation/", + "post_title": "620. British TV: Dragons\u2019 Den (Part 2) Negotiation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.485844Z", + "index": 2019101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 619, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/10/09/619-british-tv-dragons-den-part-1-vocabulary/", + "post_title": "619. British TV: Dragons\u2019 Den (Part 1) Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.477847Z", + "index": 2019100901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 618, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/30/618-the-climate-crisis-explained-in-10-charts-with-cara-leopold/", + "post_title": "618. The Climate Crisis Explained in 10 Charts (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.469850Z", + "index": 2019093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 617, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/26/617-sales-and-advertising-with-paul-taylor/", + "post_title": "617. Sales and Advertising (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.461852Z", + "index": 2019092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 616, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/23/616-can-you-find-the-15-idioms-with-paul-taylor/", + "post_title": "616. Can you find the 15 idioms? (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.454856Z", + "index": 2019092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 615, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/17/615-paul-taylor-became-a-dad-and-you-wont-believe-what-happened-next/", + "post_title": "615. Paul Taylor Became a Dad, and you won\u2019t believe what happened next", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.446858Z", + "index": 2019091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 614, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/13/614-another-murder-mystery-detective-story-part-3/", + "post_title": "614. Another Murder Mystery Detective Story (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.439860Z", + "index": 2019091301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 613, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/09/613-another-murder-mystery-detective-story-part-2/", + "post_title": "613. Another Murder Mystery Detective Story (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.430858Z", + "index": 2019090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 612, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/06/612-another-murder-mystery-detective-story-part-1/", + "post_title": "612. Another Murder Mystery Detective Story (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.422860Z", + "index": 2019090601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 611, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/09/03/611-top-10-jokes-from-edinburgh-fringe-2019/", + "post_title": "611. Top 10 Jokes from Edinburgh Fringe 2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.415864Z", + "index": 2019090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 610, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/30/610-british-comedy-james-acaster/", + "post_title": "610. British Comedy: James Acaster", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.407870Z", + "index": 2019083001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 609, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/28/609-the-lep-meetup-in-london-brexit-talking-to-my-daughter/", + "post_title": "609. The LEP MeetUp in London / Brexit / Talking to my Daughter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.400873Z", + "index": 2019082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 608, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/21/608-the-mass-observation-with-mum/", + "post_title": "608. The Mass Observation (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.392875Z", + "index": 2019082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 607, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/08/09/607-the-rick-thompson-report-boris-johnson-pm-no-deal-brexit/", + "post_title": "607. The Rick Thompson Report: Boris Johnson PM / No Deal Brexit?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.384874Z", + "index": 2019080901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 606, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/25/606-the-english-seaside-with-james/", + "post_title": "606. The English Seaside (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.376880Z", + "index": 2019072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 605, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/18/605-unexpected-road-trip-with-james/", + "post_title": "605. Unexpected Road Trip (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.369878Z", + "index": 2019071801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 604, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/05/604-london-native-speaker-interviews-revisited-part-2/", + "post_title": "604. London Native Speaker Interviews REVISITED Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.360881Z", + "index": 2019070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 603, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/07/01/603-queen-freddie-mercury-bohemian-rhapsody/", + "post_title": "603. Queen / Freddie Mercury / Bohemian Rhapsody", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.353889Z", + "index": 2019070101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 602, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/27/602-british-comedy-the-day-today-part-2/", + "post_title": "602. British Comedy: The Day Today (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.344891Z", + "index": 2019062701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 601, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/24/601-british-comedy-the-day-today-part-1/", + "post_title": "601. British Comedy: The Day Today (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.337893Z", + "index": 2019062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/18/quick-hello-opp-living-through-comedy-somewhere-else-dreamin/", + "post_title": "Quick Hello / OPP / Living Through Comedy / Somewhere Else Dreamin\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.329896Z", + "index": 2019061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 600, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/08/600-episode-600-youtube-livestream-ask-me-anything/", + "post_title": "600. Episode 600 YouTube Livestream \u2013 Ask Me Anything", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.322894Z", + "index": 2019060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 599, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/06/03/599-oliver-gee-returns-with-stories-to-tell/", + "post_title": "599. Oliver Gee Returns with Stories to Tell", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.314901Z", + "index": 2019060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 598, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/28/598-the-rick-thompson-report-eu-elections-theresa-may-brexit-football/", + "post_title": "598. The Rick Thompson Report: EU Elections / Theresa May / Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.307903Z", + "index": 2019052801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/27/hello-here-are-the-details-of-the-episode-600-youtube-live-stream/", + "post_title": "Hello! Here are the details of the Episode 600 YouTube live stream", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.299906Z", + "index": 2019052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 597, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/23/597-growing-up-getting-older-becoming-a-father-with-paul-taylor/", + "post_title": "597. Growing Up / Getting Older / Becoming a Father (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.292910Z", + "index": 2019052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 596, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/20/596-sleep-with-amber-paul/", + "post_title": "596. SLEEP with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.284906Z", + "index": 2019052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 595, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/15/595-andy-johnson-returns-part-2-eating-tv-series-football-music/", + "post_title": "595. Andy Johnson Returns (Part 2) Eating / TV Series / Football / Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.276914Z", + "index": 2019051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 594, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/13/594-andy-johnson-returns-part-1-moving-house-london-vs-canterbury-english-teaching/", + "post_title": "594. Andy Johnson Returns (Part 1) Moving House / London vs Canterbury / English Teaching", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.269915Z", + "index": 2019051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 593, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/10/593-going-through-pages-in-an-old-diary/", + "post_title": "593. Going through pages in an old diary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.261918Z", + "index": 2019051001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 592, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/05/07/592-it-always-seems-impossible-until-its-done/", + "post_title": "592. It always seems impossible until it\u2019s done", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.253921Z", + "index": 2019050701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 591, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/29/591-london-native-speaker-interviews-revisited-part-1/", + "post_title": "591. London Native Speaker Interviews REVISITED (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.245924Z", + "index": 2019042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 590, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/24/590-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", + "post_title": "590. [2/2] Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.238926Z", + "index": 2019042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 589, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/23/589-film-club-avengers-endgame-marvel-cinematic-universe-with-fred-eyangoh/", + "post_title": "589. Film Club: Avengers Endgame / Marvel Cinematic Universe (with Fred Eyangoh)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.230928Z", + "index": 2019042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 588, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/19/588-punctuation-rules-book-review-part-2-apostrophe-full-stop-comma/", + "post_title": "588. Punctuation Rules / Book Review (Part 2) Apostrophe, Full Stop, Comma", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.223930Z", + "index": 2019041901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 587, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/18/587-punctuation-rules-book-review-part-1/", + "post_title": "587. Punctuation Rules / Book Review (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.215929Z", + "index": 2019041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/12/its-leps-10th-birthday/", + "post_title": "It\u2019s LEP\u2019s 10th Birthday!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.207931Z", + "index": 2019041201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 586, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/04/06/586-the-importance-of-listening/", + "post_title": "586. The Importance of Listening", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.200938Z", + "index": 2019040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 585, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/29/585-alternative-british-citizenship-tests-with-paul-taylor/", + "post_title": "585. Alternative British Citizenship Tests with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.192936Z", + "index": 2019032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 584, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/25/584-posh-or-not-posh-part-3-with-amber-paul/", + "post_title": "584. Posh or not posh? (Part 3) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.185938Z", + "index": 2019032501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 583, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/20/583-british-comedy-the-dirty-fork-restaurant-sketch-monty-python/", + "post_title": "583. British Comedy: The Dirty Fork / Restaurant Sketch (Monty Python)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.177945Z", + "index": 2019032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 582, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/15/582-posh-or-not-posh-part-2-guess-the-posh-british-celebrities/", + "post_title": "582. Posh or not posh? (Part 2) Guess the Posh British Celebrities", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.170950Z", + "index": 2019031501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 581, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/13/581-posh-or-not-posh-part-1-understanding-posh-people-and-posh-accents/", + "post_title": "581. Posh or not posh? (Part 1) Understanding Posh People and Posh Accents", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.162952Z", + "index": 2019031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 580, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/08/580-ramble-listener-comments-robots-vampires-two-taps-in-the-bathroom/", + "post_title": "580. Ramble / Listener Comments / Robots / Vampires / Two Taps in the Bathroom", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.155955Z", + "index": 2019030801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 579, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/03/01/579-2-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", + "post_title": "579. [2/2] IELTS Q&A with Ben Worthington from IELTS Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.146958Z", + "index": 2019030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 578, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/28/578-1-2-ielts-qa-with-ben-worthington-from-ielts-podcast/", + "post_title": "578. [1/2] IELTS Q&A with Ben Worthington from IELTS Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.139960Z", + "index": 2019022801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 577, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/14/577-uk-vs-us-slang-game-with-jennifer-from-english-across-the-pond/", + "post_title": "577. UK vs US Slang Game (with Jennifer from English Across the Pond)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.131956Z", + "index": 2019021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/05/website-post-i-was-on-the-rock-roll-english-podcast-again-new-premium-episodes-coming-throughout-february/", + "post_title": "[Website post] I was on the Rock & Roll English Podcast again / New Premium episodes coming throughout February", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.124963Z", + "index": 2019020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 576, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/02/02/576-talking-about-comedy-books-films-music-with-james/", + "post_title": "576. Talking about Comedy, Books, Films & Music with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.116966Z", + "index": 2019020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 575, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/30/575-british-comedy-paul-chowdhry/", + "post_title": "575. British Comedy: Paul Chowdhry", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.109963Z", + "index": 2019013001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 574, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/25/574-2-2-the-rick-thompson-report-brexit-qa-january-2019/", + "post_title": "574. [2/2] The Rick Thompson Report: Brexit Q&A (January 2019)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.101966Z", + "index": 2019012502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 573, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/25/573-1-2-the-rick-thompson-report-brexit-update-january-2019/", + "post_title": "573. [1/2] The Rick Thompson Report: Brexit Update (January 2019)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.093973Z", + "index": 2019012501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 572, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/20/572-worst-stand-up-gig-experiences-with-amber-paul/", + "post_title": "572. Worst Stand-up Gig Experiences (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.086975Z", + "index": 2019012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 571, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/16/571-bill-burrs-hilarious-plane-story-enjoy-comedy-storytelling-in-english/", + "post_title": "571. Bill Burr\u2019s Hilarious Plane Story \u2013 Enjoy Comedy/Storytelling in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.078978Z", + "index": 2019011601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 570, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/11/570-learning-teaching-english-with-zdenek-lukas-part-2/", + "post_title": "570. Learning & Teaching English with Zdenek Lukas (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.071980Z", + "index": 2019011102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 569, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/11/569-learning-teaching-english-with-zdenek-lukas-part-1/", + "post_title": "569. Learning & Teaching English with Zdenek Lukas (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.063983Z", + "index": 2019011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 568, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2019/01/07/568-what-is-lukes-english-podcast-and-how-can-it-help-you-with-your-english/", + "post_title": "568. What is Luke\u2019s English Podcast, and how can it help you with your English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.055985Z", + "index": 2019010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 567, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/21/567-alternative-christmas-stories-poems-beatles-happy-new-year-from-lep/", + "post_title": "567. Alternative Christmas Stories & Poems / Beatles / Happy New Year from LEP!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.047988Z", + "index": 2018122101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 566, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/19/566-the-collins-words-of-the-year-part-6-2018-with-amber-minogue/", + "post_title": "566. The Collins Words of the Year (Part 6) 2018 with Amber Minogue", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.040991Z", + "index": 2018121901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 565, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/17/565-the-collins-words-of-the-year-part-5-2018-with-amber-minogue/", + "post_title": "565. The Collins Words of the Year (Part 5) 2018 with Amber Minogue", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.033988Z", + "index": 2018121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 564, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/13/564-the-collins-words-of-the-year-part-4/", + "post_title": "564. The Collins Words of the Year (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.025990Z", + "index": 2018121301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 563, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/11/563-the-collins-words-of-the-year-part-3/", + "post_title": "563. The Collins Words of the Year (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.018994Z", + "index": 2018121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 562, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/10/562-the-collins-words-of-the-year-part-2/", + "post_title": "562. The Collins Words of the Year (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.010996Z", + "index": 2018121001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 561, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/07/561-the-collins-words-of-the-year-part-1/", + "post_title": "561. The Collins Words of the Year (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:30.002998Z", + "index": 2018120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 560, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/12/03/560-sarah-donnelly-returns-writing-jokes-public-speaking-doing-comedy-in-another-language/", + "post_title": "560. Sarah Donnelly Returns \u2013 Writing jokes, public speaking, doing comedy in another language", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.996000Z", + "index": 2018120301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 559, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/20/559-the-rick-thompson-report-brexit-chaos-november-2018/", + "post_title": "559. The Rick Thompson Report: Brexit Chaos (November 2018)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.988003Z", + "index": 2018112001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 558, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/15/558-rambling-in-the-new-sky-pod/", + "post_title": "558. Rambling in the new Sky-Pod", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.980006Z", + "index": 2018111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/11/09/a-letter-from-luke-9-nov-2018/", + "post_title": "A Letter from Luke \u2013 9 Nov. 2018", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.973063Z", + "index": 2018110901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 557, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/29/557-im-a-rambling-guy-monologue-autumn-2018/", + "post_title": "557. I\u2019m a Rambling Guy (Monologue \u2013 Autumn 2018)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.965067Z", + "index": 2018102901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 556, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/24/556-with-jessica-beck-from-honestly-english/", + "post_title": "556. With Jessica Beck from Honestly English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.958068Z", + "index": 2018102401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 555, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/22/555-raphael-millers-summer-school-report/", + "post_title": "555. Raphael Miller\u2019s Summer School Report", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.950067Z", + "index": 2018102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 554, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/18/554-odd-news-stories-with-mum-dad/", + "post_title": "554. ODD NEWS STORIES (with Mum & Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.942073Z", + "index": 2018101801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 553, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/15/553-fighting-wildland-fires-with-benny-the-russian-firefighter/", + "post_title": "553. Fighting Wildland Fires with Benny the Russian Firefighter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.935076Z", + "index": 2018101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 552, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/05/552-discussing-comedy-culture-with-amber-paul/", + "post_title": "552. Discussing Comedy & Culture (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.927078Z", + "index": 2018100501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 551, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/10/01/551-catching-up-with-amber-paul-8-stereotypes/", + "post_title": "551. Catching Up with Amber & Paul #8 \u2013 Stereotypes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.920082Z", + "index": 2018100101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 550, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/28/550-british-comedy-alan-partridge-part-3/", + "post_title": "550. British Comedy: Alan Partridge (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.912078Z", + "index": 2018092801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 549, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/26/549-british-comedy-alan-partridge-part-2/", + "post_title": "549. British Comedy: Alan Partridge (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.905081Z", + "index": 2018092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 548, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/25/548-british-comedy-alan-partridge-part-1/", + "post_title": "548. British Comedy: Alan Partridge (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.896088Z", + "index": 2018092501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 547, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/19/547-best-jokes-from-the-edinburgh-festival-fringe/", + "post_title": "547. Best Jokes from the Edinburgh Festival Fringe", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.889091Z", + "index": 2018091901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 546, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/11/546-death-by-meteor/", + "post_title": "546. Death by Meteor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.881094Z", + "index": 2018091101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 545, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/09/07/545-the-hitchhiker-by-roald-dahl-short-story/", + "post_title": "545. The Hitchhiker by Roald Dahl (Short Story)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.874091Z", + "index": 2018090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 544, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/27/544-the-rick-thompson-report-no-deal-brexit/", + "post_title": "544. The Rick Thompson Report: No Deal Brexit", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.866095Z", + "index": 2018082701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 543, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/23/543-britains-first-insect-restaurant-opens/", + "post_title": "543. Britain\u2019s First Insect Restaurant Opens", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.858102Z", + "index": 2018082301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 542, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/08/21/542-talking-rubbish-just-having-fun-with-the-thompsons/", + "post_title": "542. Talking Rubbish & Just Having Fun with The Thompsons", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.850104Z", + "index": 2018082101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 541, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/31/541-what-british-people-say-vs-what-they-mean/", + "post_title": "541. What British People Say vs What They Mean", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.842107Z", + "index": 2018073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 540, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/21/540-whats-up-post-world-cup-news-lep-meetup-london-super-mario-earworms/", + "post_title": "540. What\u2019s Up? Post World Cup / News / LEP Meetup London / Super Mario Earworms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.834109Z", + "index": 2018072101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 539, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/09/539-world-cup-2018-3-is-it-coming-home/", + "post_title": "539. World Cup 2018 [3] Is It Coming Home?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.826112Z", + "index": 2018070901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 538, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/05/538-world-cup-2018-2-the-second-round-listener-comments/", + "post_title": "538. World Cup 2018 [2] The Second Round / Listener Comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.819110Z", + "index": 2018070501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 537, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/07/02/537-how-olly-richards-learns-a-language-part-2-intermediate-plateau-the-magic-of-story-pronunciation-personality-classroom-vs-self-guided-learning/", + "post_title": "537. How Olly Richards Learns a Language (Part 2) Intermediate Plateau / The Magic of Story / Pronunciation & Personality / Classroom vs Self-Guided Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.811111Z", + "index": 2018070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 536, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/29/536-how-olly-richards-learns-a-language-part-1-compelling-material-input-based-learning/", + "post_title": "536. How Olly Richards Learns a Language (Part 1) Compelling Material / Input-based Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.804114Z", + "index": 2018062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 535, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/26/535-world-cup-2018-1/", + "post_title": "535. World Cup 2018 [1]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.796116Z", + "index": 2018062601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/22/lep-premium-is-now-live-teacherluke-co-uk-premium/", + "post_title": "LEP PREMIUM is now live \u2013 teacherluke.co.uk/premium", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.789119Z", + "index": 2018062201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 534, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/15/534-sugar-sammy-interview-part-2-language-comedy/", + "post_title": "534. Sugar Sammy Interview (Part 2) Language & Comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.781122Z", + "index": 2018061501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 533, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/13/533-sugar-sammy-interview-part-1-multilingual-comedian/", + "post_title": "533. Sugar Sammy Interview (Part 1) Multilingual Comedian", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.774129Z", + "index": 2018061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 532, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/08/532-a-history-of-the-world-cup/", + "post_title": "532. A History of The World Cup", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.766128Z", + "index": 2018060801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 531, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/06/531-crime-vocabulary-quiz-with-moz/", + "post_title": "531. Crime Vocabulary Quiz (with Moz)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.758129Z", + "index": 2018060601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 530, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/06/03/530-more-murder-stories-with-moz/", + "post_title": "530. More Murder Stories (with Moz)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.751132Z", + "index": 2018060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 529, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/29/529-the-m-word-with-andy-johnson/", + "post_title": "529. The \u201cM\u201d Word (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.743134Z", + "index": 2018052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 528, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/23/528-the-royal-wedding-with-mum/", + "post_title": "528. The Royal Wedding (with Mum)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.736137Z", + "index": 2018052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 527, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/18/527-can-paul-taylor-pass-the-uk-citizenship-test/", + "post_title": "527. Can Paul Taylor Pass The UK Citizenship Test?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.728140Z", + "index": 2018051801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 526, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/15/526-being-a-tourist-with-paul-taylor/", + "post_title": "526. Being a Tourist (with Paul Taylor) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.720142Z", + "index": 2018051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/14/31807/", + "post_title": "Please VOTE for LEP in the British Podcast Awards 2018 \u2013 Voting Ends on Thursday 17 May", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.712150Z", + "index": 2018051401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 525, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/08/525-ninja-august-podcast-corrections-useful-japanese-cat-listener-comments-questions/", + "post_title": "525. Ninja August / Podcast Corrections / Useful Japanese Cat (Listener Comments & Questions)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.705151Z", + "index": 2018050801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 524, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/05/04/524-tricky-pronunciation-debates-either-neither-grammar-nazi-sketch/", + "post_title": "524. Tricky Pronunciation Debates / \u201cEither\u201d \u201cNeither\u201d / Song + Comedy Sketch", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.697154Z", + "index": 2018050401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 523, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/24/523-tips-for-learning-english-with-films-tv-shows-with-cara-leopold/", + "post_title": "523. Tips for Learning English with Films & TV Shows (with Cara Leopold)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.690156Z", + "index": 2018042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 522, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/18/522-learning-english-at-summer-school-in-the-uk-a-rambling-chat-with-raphael-miller/", + "post_title": "522. Learning English at Summer School in the UK (A Rambling Chat with Raphael Miller)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.682155Z", + "index": 2018041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 521, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/13/520-talking-about-pets-with-james/", + "post_title": "521. Talking about Pets (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.675161Z", + "index": 2018041301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 520, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/04/03/520-idioms-game-chat-part-2-with-andy-johnson-18-more-idioms-vocab-items-explained/", + "post_title": "520. Idioms Game & Chat Part 2 (with Andy Johnson) + 18 More Idioms & Vocab Items Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.667159Z", + "index": 2018040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 519, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/29/519-idioms-game-chat-with-andy-johnson-25-idioms-explained/", + "post_title": "519. Idioms Game & Chat (with Andy Johnson) + 25 Idioms Explained", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.659162Z", + "index": 2018032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 518, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/21/518-grammar-questions-part-1-present-perfect-continuous-future-continuous-language-of-newspaper-headlines/", + "post_title": "518. Grammar Questions (Part 1) Present Perfect Continuous / Future Continuous / Language of Newspaper Headlines", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.652164Z", + "index": 2018032101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 517, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/14/517-professor-stephen-hawking/", + "post_title": "517. Professor Stephen Hawking (An Obituary)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.644166Z", + "index": 2018031401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 516, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/10/516-paul-mccartneys-spider-story/", + "post_title": "516. Paul McCartney\u2019s Spider Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.637168Z", + "index": 2018031001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 515, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/06/515-becoming-maman-with-amber-sarah-bringing-up-children-the-french-way/", + "post_title": "515. Becoming \u201cMaman\u201d with Amber & Sarah \u2013 Bringing Up Children The French Way", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.629171Z", + "index": 2018030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 514, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/03/01/514-whats-on-the-table-with-fred-alex/", + "post_title": "514. What\u2019s on the table? (with Fred & Alex)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.622173Z", + "index": 2018030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 513, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/23/513-general-ramble-news-comments/", + "post_title": "513. General Ramble / News / Comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.614177Z", + "index": 2018022301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/21/website-only-i-was-on-the-becoming-maman-podcast-with-amber-minogue-sarah-donnelly/", + "post_title": "[Website-only] I was on the \u201cBecoming Maman\u201d podcast with Amber Minogue & Sarah Donnelly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.606179Z", + "index": 2018022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 512, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/16/512-my-experiences-of-not-learning-french-part-2-learning-language-in-a-classroom-vs-learning-on-your-own/", + "post_title": "512. My Experiences of (not) Learning French [Part 2] Learning Language in a Classroom vs Learning On Your Own", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.598182Z", + "index": 2018021601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 511, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/13/511-my-experiences-of-not-learning-french-part-1/", + "post_title": "511. My Experiences of (not) Learning French [Part 1]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.591183Z", + "index": 2018021301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 510, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/05/510-philosophy-quiz-with-amber-paul/", + "post_title": "510. Philosophy Quiz (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.584186Z", + "index": 2018020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 509, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/02/01/509-whats-it-all-about-philosophy-and-language-learning/", + "post_title": "509. What\u2019s it all about? (Philosophy and Language Learning)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.575189Z", + "index": 2018020101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 508, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/27/508-six-true-crime-stories-from-victorian-england-told-by-my-dad/", + "post_title": "508. Six True Crime Stories from Victorian England, Told by My Dad", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.568191Z", + "index": 2018012701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 507, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/21/british-comedy-tv-shows-to-learn-english-some-british-comedy-tv-show-recommendations/", + "post_title": "507. Learning English with UK Comedy TV Shows", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.559195Z", + "index": 2018012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 506, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/15/506-one-of-britains-favourite-poems/", + "post_title": "506. One of Britain\u2019s Favourite Poems", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.551197Z", + "index": 2018011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 505, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/12/505-a-chat-with-dad-james-about-star-wars-the-last-jedi-with-vocabulary/", + "post_title": "505. A Chat with Dad & James about Star Wars: The Last Jedi (with Vocabulary)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.542200Z", + "index": 2018011201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 504, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/11/504-my-review-of-star-wars-the-last-jedi-part-2/", + "post_title": "504. My Review of Star Wars: The Last Jedi (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.532204Z", + "index": 2018011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 503, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/10/503-my-review-of-star-wars-the-last-jedi-part-1/", + "post_title": "503. My Review of Star Wars: The Last Jedi (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.524212Z", + "index": 2018011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 502, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2018/01/03/502-the-birth-of-my-daughter/", + "post_title": "502. The Birth of My Daughter", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.517209Z", + "index": 2018010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 501, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/24/501-merry-christmas-listener-correspondence/", + "post_title": "501. Merry Christmas! / Listener Correspondence", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.508218Z", + "index": 2017122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/22/observations-on-the-paris-metro-from-inside-the-metro-listen-to-my-appearance-on-oliver-gees-podcast-the-earful-tower/", + "post_title": "Observations on the Paris Metro\u2026 from Inside the Metro (Listen to my appearance on Oliver Gee\u2019s podcast \u201cThe Earful Tower\u201d)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.501213Z", + "index": 2017122201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 500, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/17/500-12-episode-500-celebration-part-1/", + "post_title": "500. EPISODE 500 CELEBRATION! (PARTS 1 & 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.493221Z", + "index": 2017121701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 499, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/11/499-prince-harry-meghan-markle-royal-family-quiz-with-amber/", + "post_title": "499. Prince Harry & Meghan Markle / Royal Family Quiz (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.486219Z", + "index": 2017121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 498, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/08/498-the-rick-thompson-report-brexit-negotiations/", + "post_title": "498. The Rick Thompson Report: Brexit Negotiations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.476223Z", + "index": 2017120801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 497, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/12/04/497-film-club-withnail-i-with-james-and-will/", + "post_title": "497. Film Club: Withnail & I (with James and Will)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.469229Z", + "index": 2017120401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 496, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/29/496-ramblecast/", + "post_title": "496. RAMBLECAST", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.461232Z", + "index": 2017112901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 495, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/26/495-australian-stereotypes-and-cliches-with-oliver-gee-didgeridoo-sounds/", + "post_title": "495. Australian Stereotypes and Cliches (with Oliver Gee) ~didgeridoo sounds~", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.453234Z", + "index": 2017112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 494, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/21/494-who-wants-to-be-good-at-english-the-rematch-with-rick-thompson/", + "post_title": "494. Who Wants to be Good at English? (The Rematch) with Rick Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.445232Z", + "index": 2017112101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 493, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/17/493-catching-up-with-amber-paul-7-human-pollution/", + "post_title": "493. Catching Up with Amber & Paul #7 (Human Pollution)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.438240Z", + "index": 2017111701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 492, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/12/492-becoming-a-dad-with-andy-ben-part-2/", + "post_title": "492. Becoming a Dad (with Andy & Ben) Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.430243Z", + "index": 2017111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 491, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/08/491-becoming-a-dad-with-andy-ben-part-1/", + "post_title": "491. Becoming a Dad (with Andy & Ben) Part 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.423243Z", + "index": 2017110801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 490, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/11/03/490-discussing-friendship-with-martin-and-dan-the-man-from-rock-n-roll-english-friendship-phrasal-verbs/", + "post_title": "490. Discussing Friendship \u2013 with Martin and Dan The Man from Rock n\u2019 Roll English (Friendship Phrasal Verbs)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.416247Z", + "index": 2017110301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 489, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/30/489-a-rambling-conversation-with-mum-part-2-vocabulary/", + "post_title": "489. A Rambling Conversation with Mum (Part 2) + Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.408244Z", + "index": 2017103001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 488, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/26/488-a-rambling-conversation-with-mum-part-1-vocabulary/", + "post_title": "488. A Rambling Conversation with Mum (Part 1) + Vocabulary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.401251Z", + "index": 2017102601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 487, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/22/487-learning-languages-and-adapting-to-new-cultures-with-ethan-from-reallife-english/", + "post_title": "487. Learning Languages and Adapting to New Cultures (with Ethan from RealLife English)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.393253Z", + "index": 2017102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 485, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/13/difficult-words-to-pronounce-in-english-with-paul-taylor/", + "post_title": "485. & 486. Difficult Words to Pronounce in English (with Paul Taylor) (Parts 1 & 2) + video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.386256Z", + "index": 2017101301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 484, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/08/484-try-not-to-laugh-on-the-bus-with-paul-taylor/", + "post_title": "484. Try not to Laugh on the Bus (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.378259Z", + "index": 2017100801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/04/the-flat-earth-podcast-and-this-is-what-happened/", + "post_title": "I was invited onto The Flat Earth Podcast, and this is what happened\u2026 [Website only]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.371261Z", + "index": 2017100401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 483, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/10/01/483-a-rambling-chat-with-moz/", + "post_title": "483. A Rambling Chat with Moz", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.362263Z", + "index": 2017100101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 482, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/26/482-the-murder-mile-true-crime-podcast-with-moz-more-creepy-stories-of-murders-in-london/", + "post_title": "482. The Murder Mile True Crime Podcast (with Moz) More Creepy Stories of Murders in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.354262Z", + "index": 2017092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/24/website-content-luke-on-the-real-life-english-podcast/", + "post_title": "[Website content] Luke on the RealLife English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.346265Z", + "index": 2017092401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 481, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/20/481-holiday-diary-final-part-endeavour-to-persevere/", + "post_title": "481. Holiday Diary (Final Part) \u201cEndeavour to Persevere\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.338272Z", + "index": 2017092001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 480, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/18/480-holiday-diary-part-7-big-rocks/", + "post_title": "480. Holiday Diary (Part 7) BIG ROCKS!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.331274Z", + "index": 2017091801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 479, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/15/479-holiday-diary-part-6-the-madness-of-las-vegas-11-gambling-idioms/", + "post_title": "479. Holiday Diary (Part 6) The Madness of Las Vegas / 11 Gambling Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.323277Z", + "index": 2017091501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 478, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/12/478-holiday-diary-part-5-an-encounter-with-the-church-of-scientology/", + "post_title": "478. Holiday Diary (Part 5) An Encounter with The Church of Scientology", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.316278Z", + "index": 2017091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 477, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/09/477-holiday-diary-part-4-the-fresh-prince-of-bel-air/", + "post_title": "477. Holiday Diary (Part 4) The Fresh Prince of Bel Air", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.308282Z", + "index": 2017090901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 476, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/03/476-holiday-diary-part-3-astronomy-astrology-flat-earth-conspiracy-theory/", + "post_title": "476. Holiday Diary (Part 3) Astronomy, Astrology & Flat Earth Conspiracy Theory", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.301285Z", + "index": 2017090302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 475, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/09/03/475-holiday-diary-part-2-modern-art-is-it-amazing-or-is-it-rubbish/", + "post_title": "475. Holiday Diary (Part 2) Modern Art: Is it amazing, or is it rubbish?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.293286Z", + "index": 2017090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 474, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/31/474-holiday-diary-part-1/", + "post_title": "474. Holiday Diary (Part 1) New Arrival, New Destinations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.286288Z", + "index": 2017083101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 473, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/22/473-explaining-the-rules-of-cricket-with-dad/", + "post_title": "473. Explaining the Rules of Cricket (with Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.213313Z", + "index": 2017082201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/18/website-only-star-wars-dvd-commentary-with-james/", + "post_title": "[Website Only] Star Wars DVD Commentary (with James) ***Contains swearing \u2013 Not suitable for Children***", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.205315Z", + "index": 2017081801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/15/why-does-the-uk-have-so-many-accents-recorded-february-2017/", + "post_title": "Why does the UK have so many accents? (Recorded February 2017)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.197313Z", + "index": 2017081501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/14/website-content-lukes-criminal-past-zep-episode-185/", + "post_title": "Luke\u2019s Criminal Past (ZEP Episode 185)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.190516Z", + "index": 2017081401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 472, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/10/472-andy-johnson-at-the-london-school-of-english-part-2-why-andy-runs-marathons/", + "post_title": "472. Andy\u2019s Survival Story / Why Andy Runs Marathons (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.182520Z", + "index": 2017081001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 471, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/06/471-andy-johnson-at-the-london-school-of-english-part-1-lego-self-directed-learning-accents/", + "post_title": "471. Stepping on Lego, Self-directed Learning, Accents (with Andy Johnson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.174521Z", + "index": 2017080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/08/02/ive-got-something-to-tell-you-im-leaving/", + "post_title": "I\u2019m going on holiday \u2013 back in a few weeks!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.167524Z", + "index": 2017080201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 470, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/31/470-understanding-the-liverpool-accent/", + "post_title": "470. Understanding the Liverpool Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.159533Z", + "index": 2017073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 469, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/27/469-british-comedy-john-bishop/", + "post_title": "469. British Comedy: John Bishop", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.152533Z", + "index": 2017072701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 468, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/24/468-punk-music-culture-with-james/", + "post_title": "468. Punk \u2013 Music & Culture (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.144531Z", + "index": 2017072401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 467, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/20/467-a-boiling-hot-evening-ramble-comments-questions/", + "post_title": "467. A Boiling-Hot Evening Ramble \u2013 Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.137534Z", + "index": 2017072001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 466, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/15/466-get-this-word-into-your-life/", + "post_title": "466. Get this word into your life", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.129536Z", + "index": 2017071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 465, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/10/465-how-i-make-episodes-of-the-podcast-part-2/", + "post_title": "465. How I make episodes of the podcast (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.121545Z", + "index": 2017071001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 464, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/06/464-how-i-make-episodes-of-the-podcast-part-1/", + "post_title": "464. How I make episodes of the podcast (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.113548Z", + "index": 2017070601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 463, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/07/03/463-news-comments-questions/", + "post_title": "463. News, Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.106548Z", + "index": 2017070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 462, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/28/462-british-comedy-bill-bailey/", + "post_title": "462. British Comedy: Bill Bailey", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.099547Z", + "index": 2017062801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 461, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/24/461-25-deceptively-difficult-questions-with-amber-paul-sarah/", + "post_title": "461. 25 Deceptively Difficult Questions (with Amber, Paul & Sarah)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.091549Z", + "index": 2017062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 460, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/20/460-catching-up-with-amber-paul-6-feat-sarah-donnelly/", + "post_title": "460. Catching Up With Amber & Paul #6 (feat. Sarah Donnelly)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.083557Z", + "index": 2017062001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 459, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/17/459-lazing-on-a-sunny-afternoon/", + "post_title": "459. Lazing on a Sunny Afternoon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.075559Z", + "index": 2017061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/15/i-was-on-the-rock-n-roll-english-podcast-and-the-earful-tower-podcast-this-week/", + "post_title": "[Website content] I was on The Rock n\u2019 Roll English Podcast and The Earful Tower Podcast this week", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.068562Z", + "index": 2017061501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 458, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/14/458-the-rick-thompson-report-post-election-2017/", + "post_title": "458. The Rick Thompson Report: Post-Election 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.060563Z", + "index": 2017061401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 457, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/09/457-conclusions-about-language-learning-from-the-david-crystal-interview-part-2/", + "post_title": "457. Conclusions about Language Learning from the David Crystal Interview (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.053565Z", + "index": 2017060902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 456, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/09/456-conclusions-about-language-learning-from-the-david-crystal-interview-part-1/", + "post_title": "456. Conclusions about Language Learning from the David Crystal Interview (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.045568Z", + "index": 2017060901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 455, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/06/455-david-crystal-interview-part-2-questions-from-listeners/", + "post_title": "455. David Crystal Interview (Part 2) Questions from Listeners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.038571Z", + "index": 2017060601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/06/01/30029/", + "post_title": "A Message from Amber", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.030569Z", + "index": 2017060101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 454, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/31/454-david-crystal-interview-part-1-professor-of-linguistics/", + "post_title": "454. David Crystal Interview (Part 1) Professor of Linguistics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.023576Z", + "index": 2017053101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 453, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/27/453-the-36-questions-that-lead-to-love-with-amber-paul/", + "post_title": "453. The 36 Questions that Lead to Love (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:29.015574Z", + "index": 2017052701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 452, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/24/452-a-conversation-about-language-with-amber-paul/", + "post_title": "452. A Conversation About Language (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.956597Z", + "index": 2017052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 451, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/22/451-film-club-alien-covenant/", + "post_title": "451. Film Club: Alien Covenant", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.949596Z", + "index": 2017052201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 450, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/16/450-comments-questions/", + "post_title": "450. Comments & Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.941602Z", + "index": 2017051601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 449, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/13/449-film-club-touching-the-void-part-2/", + "post_title": "449. Film Club: Touching the Void (Part 2) Learning a Language is Like Climbing a Mountain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.934600Z", + "index": 2017051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 448, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/12/448-film-club-touching-the-void-part-1/", + "post_title": "448. Film Club: Touching The Void (Part 1) Learning a Language is Like Climbing a Mountain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.926608Z", + "index": 2017051201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 447, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/08/447-what-is-this-british-humour/", + "post_title": "447. What is this, British Humour? (with Amber Minogue)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.919609Z", + "index": 2017050801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 446, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/05/446-british-tv-top-gear/", + "post_title": "446. British TV: Top Gear", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.911612Z", + "index": 2017050501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 445, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/05/01/445-british-podcast-award-hello-to-new-listeners-17-vocabulary-expressions/", + "post_title": "445. British Podcast Award / Hello to New Listeners / 17 Vocabulary Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.904615Z", + "index": 2017050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 444, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/25/444-the-rick-thompson-report-snap-general-election-2017/", + "post_title": "444. The Rick Thompson Report: Snap General Election 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.896613Z", + "index": 2017042501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 443, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/21/443-the-trip-to-japan-part-2/", + "post_title": "443. The Trip to Japan (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.888622Z", + "index": 2017042102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 442, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/21/442-the-trip-to-japan-part-1/", + "post_title": "442. The Trip to Japan (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.880625Z", + "index": 2017042101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 441, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/18/441-andy-johnson-at-the-iatefl-conference/", + "post_title": "441. Andy Johnson at the IATEFL Conference", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.873626Z", + "index": 2017041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 440, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/06/440-this-pile-of-books-on-my-desk/", + "post_title": "440. This Pile of Books on my Desk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.866623Z", + "index": 2017040602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 439, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/06/439-reading-books-to-learn-english/", + "post_title": "439. Reading Books to Learn English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.857633Z", + "index": 2017040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 438, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/04/04/438-hi-luke-i-have-a-question/", + "post_title": "438. Hi Luke, I have a question!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.850628Z", + "index": 2017040401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 437, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/31/437-ramble-news-31-march-2017/", + "post_title": "437. Ramble News \u2013 31 March 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.841630Z", + "index": 2017033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 436, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/28/436-the-return-of-the-lying-game-with-amber-paul-video/", + "post_title": "436. The Return of The Lying Game (with Amber & Paul) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.834634Z", + "index": 2017032801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/26/i-was-interviewed-on-my-fluent-podcast-with-daniel-goodson/", + "post_title": "I was interviewed on \u201cMy Fluent Podcast\u201d by Daniel Goodson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.826640Z", + "index": 2017032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 435, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/24/435-catching-up-with-amber-paul-5-video/", + "post_title": "435. Catching Up With Amber & Paul #5 [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.818638Z", + "index": 2017032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 434, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/21/434-interview-with-paul-taylor-wtf-france-video/", + "post_title": "434. Interview with Paul Taylor \u2013 \u201cWTF France?\u201d [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.810647Z", + "index": 2017032101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 433, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/16/433-british-tv-gordon-ramsays-kitchen-nightmares-part-2-video/", + "post_title": "433. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 2) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.803648Z", + "index": 2017031601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 432, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/14/432-british-tv-gordon-ramsays-kitchen-nightmares-part-1-video/", + "post_title": "432. British TV: Gordon Ramsay\u2019s Kitchen Nightmares (Part 1) [Video]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.795650Z", + "index": 2017031401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 431, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/09/431-restaurants-hotels-really-strange-tripadvisor-reviews-with-amber/", + "post_title": "431. Restaurants & Hotels / Really Strange TripAdvisor Reviews (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.720675Z", + "index": 2017030901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 430, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/05/430-discussing-language-learning-life-with-fred-eyangoh/", + "post_title": "430. Discussing Language Learning & Life with Fred Eyangoh", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.712677Z", + "index": 2017030501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 429, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/03/01/429-ramblenews/", + "post_title": "429. RAMBLENEWS!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.705680Z", + "index": 2017030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 428, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/23/428-british-comedy-limmys-show-part-2/", + "post_title": "428. British Comedy: Limmy\u2019s Show (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.697678Z", + "index": 2017022301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 427, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/22/427-british-comedy-limmys-show/", + "post_title": "427. British Comedy: Limmy\u2019s Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.690680Z", + "index": 2017022201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 426, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/16/426-thompson-taylor-minogue-victorian-detectives-part-2-with-amber-paul/", + "post_title": "426. Thompson, Taylor & Minogue: Victorian Detectives (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.683683Z", + "index": 2017021601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 425, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/13/425/", + "post_title": "425. Thompson, Taylor & Minogue: Victorian Detectives (Part 1) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.675690Z", + "index": 2017021301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 424, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/08/424-with-andy-ben-from-the-london-school-of-english-part-2/", + "post_title": "424. With Andy & Ben from The London School of English (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.667693Z", + "index": 2017020801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 423, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/06/423-teacher-talking-time-with-andy-ben-from-the-london-school-of-english-part-1/", + "post_title": "423. With Andy & Ben from The London School of English (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.660690Z", + "index": 2017020601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 422, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/02/02/422-learning-british-dialects-with-korean-billy/", + "post_title": "422. Learning British Dialects with Korean Billy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.652698Z", + "index": 2017020201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 421, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/29/421-skateboarding-a-new-olympic-sport-with-james/", + "post_title": "421. Skateboarding \u2013 A New Olympic Sport (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.645701Z", + "index": 2017012901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 420, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/26/420-anyone-fancy-a-brew-lets-have-a-nice-cup-of-tea/", + "post_title": "420. Anyone fancy a brew? Let\u2019s have a nice cup of tea!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.637704Z", + "index": 2017012601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 419, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/23/419-rogue-one-a-star-wars-story-spoiler-ramble-with-james/", + "post_title": "419. Rogue One: A Star Wars Story \u2013 SPOILER RAMBLE with James", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.630705Z", + "index": 2017012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 418, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/19/418-the-rick-thompson-report-technology-and-the-future-january-2017/", + "post_title": "418. The Rick Thompson Report: Technology and The Future (January 2017)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.623707Z", + "index": 2017011901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 417, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/15/417-new-years-resolutions-and-language-learning-in-2017/", + "post_title": "417. New Year\u2019s Resolutions and Language Learning in 2017", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.614710Z", + "index": 2017011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 416, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/13/416-what-was-the-most-popular-episode-of-lep-in-2016-more-podcast-statistics/", + "post_title": "416. What was the most popular episode of LEP in 2016? + more podcast statistics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.607712Z", + "index": 2017011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 415, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/10/415-with-the-family-part-3-more-encounters-with-famous-people/", + "post_title": "415. With the Family (Part 3) More Encounters with Famous People", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.599716Z", + "index": 2017011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 414, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/05/414-with-the-family-part-2-my-uncle-met-a-rock-star/", + "post_title": "414. With the Family (Part 2) My Uncle Met a Rock Star", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.591717Z", + "index": 2017010501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 413, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2017/01/03/413-with-the-family-part-1-mums-cooking-vocabulary-with-uncle-nic/", + "post_title": "413. With The Family (Part 1) Mum\u2019s Cooking + Vocabulary (with Uncle Nic)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.584715Z", + "index": 2017010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 412, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/26/412-british-festivals-and-holidays-part-2/", + "post_title": "412. British Festivals and Holidays (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.576717Z", + "index": 2016122602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 411, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/26/411-british-festivals-and-holidays-part-1/", + "post_title": "411. British Festivals and Holidays (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.569720Z", + "index": 2016122601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/22/a-quick-message-about-donations-please-consider-donating-to-doctors-without-borders-to-help-people-in-need/", + "post_title": "A Quick Message About Donations \u2013 Please consider donating to \u201cDoctors Without Borders\u201d to help people in need", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.561722Z", + "index": 2016122201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 410, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/20/410-teaching-12-idioms-in-the-street-on-the-set-of-pauls-tv-show-with-amber/", + "post_title": "410. Teaching 12 Idioms in the Street / On the Set of Paul\u2019s TV Show (with Amber)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.553725Z", + "index": 2016122001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 409, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/16/409-a-christmas-mega-ramble-with-amber-minogue/", + "post_title": "409. A CHRISTMAS MEGA-RAMBLE with AMBER MINOGUE", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.545728Z", + "index": 2016121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 408, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/13/408-catching-up-with-amber-paul-4-videos/", + "post_title": "408. Catching Up With Amber & Paul #4 (+ videos)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.537730Z", + "index": 2016121301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 407, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/07/407-reflections-on-language-learning-working-as-a-translator-interview-with-kristina-from-russia-winner-of-the-lep-anecdote-competition-2016/", + "post_title": "407. Reflections on Language Learning & Working as a Translator: Interview with Kristina from Russia, Winner of the LEP Anecdote Competition 2016", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.528734Z", + "index": 2016120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 406, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/12/04/406-grammar-past-continuous-tense-uk-media-bias-brazil-football-tragedy/", + "post_title": "406. Grammar (Past Continuous Tense) / UK Media Bias / Brazil Football Tragedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.520736Z", + "index": 2016120401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 405, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/30/405-british-accents-in-the-lord-of-the-rings-part-2/", + "post_title": "405. British Accents in The Lord of the Rings (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.513743Z", + "index": 2016113002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 404, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/30/404-british-accents-in-the-lord-of-the-rings-part-1/", + "post_title": "404. British Accents in The Lord of the Rings (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.506741Z", + "index": 2016113001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 403, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/29/403-competition-results-war-story-grammar-my-dads-accent/", + "post_title": "403. Competition Results / War Story / Grammar & Punctuation / My Dad\u2019s Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.498744Z", + "index": 2016112901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 402, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/23/402-the-rick-thompson-report-whats-going-on-nov-2016-post-truth-politics-cricket-and-tetris/", + "post_title": "402. The Rick Thompson Report: What\u2019s Going On? Nov. 2016 (Post-Truth Politics, Cricket and Tetris)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.490751Z", + "index": 2016112301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 401, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/21/401-switch-off-your-editor-to-improve-your-fluency-in-english/", + "post_title": "401. \u2018Switch off your editor\u2019 to improve your fluency in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.483748Z", + "index": 2016112101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 400, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/18/400-the-pink-gorilla-story-2/", + "post_title": "400. The Pink Gorilla Story 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.475750Z", + "index": 2016111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 399, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/15/399-the-return-of-molly-martinez-with-dane-nightingale/", + "post_title": "399. The Return of Molly Martinez (with Dane Nightingale)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.468754Z", + "index": 2016111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 398, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/09/398-us-election-result-ramble-message-song/", + "post_title": "398. US Election Result Ramble + Message + Song", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.460755Z", + "index": 2016110901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 397, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/11/07/397-an-80-minute-ramble/", + "post_title": "397. An 80-Minute Ramble", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.453757Z", + "index": 2016110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 396, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/28/396-the-lep-anecdote-competition-round-2/", + "post_title": "396. The LEP Anecdote Competition \u2013 ROUND 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.445760Z", + "index": 2016102801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 395, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/27/395-have-you-ever-with-paul-taylor-and-robert-hoehn/", + "post_title": "395. \u201cHave you ever\u2026?\u201d with Paul Taylor and Robert Hoehn", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.438762Z", + "index": 2016102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 394, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/23/394-opp-other-peoples-podcasts-part-4/", + "post_title": "394. OPP: Other People\u2019s Podcasts (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.430765Z", + "index": 2016102301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 393, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/22/393-opp-other-peoples-podcasts-part-3/", + "post_title": "393. OPP: Other People\u2019s Podcasts (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.423767Z", + "index": 2016102201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 392, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/19/392-what-are-the-most-essential-skills-of-a-good-foreign-language-learner/", + "post_title": "392. What are the most essential skills of a good foreign language learner?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.415772Z", + "index": 2016101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 391, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/17/391-discussing-language-culture-comedy-with-alexander-van-walsum/", + "post_title": "391. Discussing Language, Culture & Comedy with Alexander van Walsum", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.407773Z", + "index": 2016101701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 390, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/14/390-the-rick-thompson-report-hard-brexit-u-s-election/", + "post_title": "390. The Rick Thompson Report: Hard Brexit / U.S. Election", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.399776Z", + "index": 2016101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 389, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/11/389-us-presidential-election-2016-trump-vs-clinton-with-sarah-sebastian-part-2/", + "post_title": "389. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.391778Z", + "index": 2016101102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 388, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/11/388-us-presidential-election-2016-trump-vs-clinton-with-sarah-and-sebastian/", + "post_title": "388. US Presidential Election 2016 \u2013 Trump vs Clinton (with Sarah & Sebastian) Part 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.384780Z", + "index": 2016101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 387, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/07/387-lep-anecdote-competition-entries-please-listen-vote/", + "post_title": "387. LEP Anecdote Competition Entries \u2013 Please listen & vote", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.376783Z", + "index": 2016100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 386, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/05/386-breaking-the-intermediate-plateau-part-2/", + "post_title": "386. Breaking the Intermediate Plateau (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.369786Z", + "index": 2016100502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 385, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/10/05/385-breaking-the-intermediate-plateau-part-1/", + "post_title": "385. Breaking the Intermediate Plateau (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.361788Z", + "index": 2016100501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 384, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/30/384-teaching-grammar-social-english/", + "post_title": "384. Teaching Grammar & Social English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.354790Z", + "index": 2016093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 383, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/27/383-more-ian-moore/", + "post_title": "383. More Ian Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.345793Z", + "index": 2016092701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/23/please-take-my-survey-anecdote-competition-russian-joke-video/", + "post_title": "Please take my survey / Anecdote Competition / \u2018Russian Joke\u2019 Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.337795Z", + "index": 2016092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 382, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/21/382-mod-culture-with-ian-moore/", + "post_title": "382. Mod Culture with Ian Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.329798Z", + "index": 2016092101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 381, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/17/381-discussing-cultural-differences-with-amber-paul/", + "post_title": "381. Discussing Cultural Differences with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.322801Z", + "index": 2016091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 380, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/12/380-catching-up-with-amber-and-paul-3/", + "post_title": "380. Catching Up with Amber and Paul #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.314803Z", + "index": 2016091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 379, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/07/379-the-lep-anecdote-competition/", + "post_title": "379. The LEP Anecdote Competition", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.307806Z", + "index": 2016090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 378, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/05/378-holiday-in-thailand-part-2/", + "post_title": "378. Holiday in Thailand (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.299809Z", + "index": 2016090501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 377, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/09/03/377-holiday-in-thailand/", + "post_title": "377. Holiday in Thailand (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.292811Z", + "index": 2016090301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/im-going-on-holiday-no-podcasts-for-a-while/", + "post_title": "I\u2019m going on holiday \u2013 no podcasts for a while", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.284814Z", + "index": 2016081204, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 376, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/376-a-game-of-mini-golf-and-a-pint-with-james/", + "post_title": "376. A Game of Mini Golf and a Pint (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.276816Z", + "index": 2016081203, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 375, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/375-the-lep-pub-quiz-with-alex-love/", + "post_title": "375. The LEP Pub Quiz (with Alex Love)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.269823Z", + "index": 2016081202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 374, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/12/374-alexs-edinburgh-report/", + "post_title": "374. Alex\u2019s Edinburgh Fringe Report", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.261826Z", + "index": 2016081201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 373, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/10/373-who-wants-to-be-good-at-english/", + "post_title": "373. Who Wants to Be Good at English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.254828Z", + "index": 2016081001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 372, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/09/372-the-importance-of-anecdotes-in-english-narrative-tenses-four-anecdotes", + "post_title": "372. The Importance of Anecdotes in English / Narrative Tenses / Four Anecdotes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.246831Z", + "index": 2016080901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 371, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/07/371-in-conversation-with-rob-ager-from-liverpool-part-2-film-analysis-hidden-meanings-stanley-kubrick-conspiracy-theory/", + "post_title": "371. In Conversation with Rob Ager from Liverpool (PART 2: Film Analysis / Hidden Meanings / Stanley Kubrick / Conspiracy Theory)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.238828Z", + "index": 2016080702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 369, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/03/389-pokemon-go-its-just-a-game-or-is-it/", + "post_title": "369. Pok\u00e9mon GO \u2013 It\u2019s just a game, OR IS IT?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.158855Z", + "index": 2016080301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 368, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/08/02/368-the-lep-annual-general-meeting-2016-questions/", + "post_title": "368. The LEP Annual General Meeting 2016 / QUESTIONS", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.150862Z", + "index": 2016080201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 367, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/31/367-talking-about-nothing-with-alex-love-invaded-by-robot-aliens-part-2/", + "post_title": "367. Talking about Nothing with Alex Love (Invaded by Robot Aliens) PART 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.142860Z", + "index": 2016073102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 366, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/31/366-talking-about-nothing-with-alex-love-invaded-by-robot-aliens/", + "post_title": "366. Talking about Nothing with Alex Love (Invaded by Robot Aliens)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.135862Z", + "index": 2016073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/27/quick-hello-notting-hill-carnival-audio/", + "post_title": "Quick Hello / Notting Hill Carnival Audio", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.127869Z", + "index": 2016072701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 365, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/17/365-brexit-3-weeks-later-a-conversation-with-my-dad/", + "post_title": "365. BREXIT: 3 Weeks Later (A conversation with my Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.120872Z", + "index": 2016071701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 364, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/15/364-ten-top-tips-for-learning-english/", + "post_title": "364. TEN TOP TIPS for Learning English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.112874Z", + "index": 2016071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 363, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/07/03/363-muhammad-ali-the-rumble-in-the-jungle/", + "post_title": "363. Muhammad Ali & The Rumble in the Jungle", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.105877Z", + "index": 2016070301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 362, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/28/362-getting-things-off-my-chest-part-2/", + "post_title": "362. Getting things off my chest! (Part 2) Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.097875Z", + "index": 2016062802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 361, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/28/361-getting-things-off-my-chest-part-1/", + "post_title": "361. Getting things off my chest! (Part 1) Brexit / Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.089877Z", + "index": 2016062801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 360, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/24/360-the-day-after-brexit-thoughts-and-feelings/", + "post_title": "360. THE DAY AFTER BREXIT (Thoughts and feelings)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.081880Z", + "index": 2016062402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 359, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/24/359-brexit-jokes-eu-referendum-night/", + "post_title": "359. BREXIT JOKES / EU REFERENDUM NIGHT", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.073648Z", + "index": 2016062401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 358, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/23/358-fete-de-la-musique-world-music-festival-in-paris/", + "post_title": "358. F\u00eate de la Musique / World Music Festival in Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.066652Z", + "index": 2016062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 357, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/19/357-olly-richards/", + "post_title": "357. Learning Languages with Olly Richards", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.059090Z", + "index": 2016061901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 356, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/17/356-lep-meeting-football-brexit-events-in-the-uk-jo-cox/", + "post_title": "356. News / Football / Brexit / Events in the UK / Jo Cox", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.052096Z", + "index": 2016061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 355, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/13/355-euro-2016-football-hooliganism-violence-in-marseille-england-vs-russia/", + "post_title": "355. EURO 2016 Football: Hooliganism & Violence in Marseille / England vs Russia", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.043099Z", + "index": 2016061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 354, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/10/354-would-you-rather-with-amber-paul-james-simpson/", + "post_title": "354. Would You Rather\u2026? (with Amber, Paul & James Simpson)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.036101Z", + "index": 2016061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 353, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/07/353-award-ceremony-paris-weather-crazy-idea/", + "post_title": "353. Award Ceremony / Paris Weather / Crazy Idea", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.028103Z", + "index": 2016060702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 352, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/06/07/352-brexit-key-vocabulary-and-concepts/", + "post_title": "352. BREXIT: Key Vocabulary and Concepts", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.021106Z", + "index": 2016060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 351, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/29/351-brexit-should-the-uk-leave-the-eu-a-conversation-with-my-dad/?w3tc_note=flush_all", + "post_title": "351. BREXIT: Should the UK leave the EU? (A Conversation with my Dad)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.013104Z", + "index": 2016052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 350, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/26/350-x-men-apocalypse-film-review/", + "post_title": "350. Film Club: X-Men Apocalypse (Review)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:28.005106Z", + "index": 2016052601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 349, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/24/349-whos-the-best-superhero-with-paul-langton/", + "post_title": "349. Who\u2019s the best superhero? (with Paul Langton)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.997114Z", + "index": 2016052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 348, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/19/348-marvel-superhero-movies-captain-america-civil-war-part-2/", + "post_title": "348. Film Club: Marvel / Captain America Civil War (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.990117Z", + "index": 2016051902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 347, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/19/347-marvel-superhero-movies-captain-america-civil-war-part-1/", + "post_title": "347. Film Club: Marvel / Captain America Civil War (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.983115Z", + "index": 2016051901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 346, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/13/346-rambling-on-a-friday-afternoon/", + "post_title": "346. Rambling on a Friday Afternoon", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.975121Z", + "index": 2016051301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 345, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/05/11/345-elton-award-nomination-phrasal-verbs-idioms-brooklyn-the-revenant-museum-of-natural-history-more/", + "post_title": "345. ELTon Award Nomination / Phrasal Verbs & Idioms / Brooklyn / The Revenant / Museum of Natural History & More", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.968119Z", + "index": 2016051101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 344, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/22/344-a-totally-terrific-talk-on-the-terrace-with-the-tangential-trio-feat-tom-morton/", + "post_title": "344. A Totally Terrific Talk on the Terrace with The Tangential Trio (feat. Tom Morton) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.960125Z", + "index": 2016042201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 343, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/20/the-interactive-lying-game/", + "post_title": "343. The Interactive Lying Game (with Amber & Paul) / Descriptive Adjectives with T / Three is a Magic Number", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.953128Z", + "index": 2016042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 342, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/18/342-pauls-la-bise-video-success-audition-story-with-amber-paul/", + "post_title": "342. Paul\u2019s \u201cLa Bise\u201d Video Success / Audition Story (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.945125Z", + "index": 2016041801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 341, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/15/341-catching-up-with-amber-paul-again/", + "post_title": "341. Catching Up With Amber & Paul, Again", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.938128Z", + "index": 2016041501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 340, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/07/340-lep-photo-competition-results-winners-its-leps-7th-birthday/", + "post_title": "340. LEP Photo Competition Results & Winners / It\u2019s LEP\u2019s 7th Birthday", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.929131Z", + "index": 2016040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 339, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/04/03/339-a-murder-mystery-detective-story-part-2/", + "post_title": "339. A Murder Mystery Detective Story (Part 2 of 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.922133Z", + "index": 2016040301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 338, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/31/338-a-murder-mystery-detective-story/", + "post_title": "338. A Murder Mystery Detective Story (Part 1 of 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.914136Z", + "index": 2016033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/24/i-was-interviewed-by-olly-richards-on-his-podcast-called-i-will-teach-you-a-language-and-we-talked-about-language-learning/", + "post_title": "I was interviewed by Olly Richards on his podcast, called \u201cI Will Teach You a Language\u201d and we talked about language learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.907138Z", + "index": 2016032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 337, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/23/337-murder-mile-walks-stories-of-londons-most-infamous-shocking-murders-some-explicit-content-swearing/", + "post_title": "337. MURDER MILE WALKS: Stories of London\u2019s Most Infamous & Shocking Murders [Some Explicit Content + Swearing]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.899142Z", + "index": 2016032301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/20/i-was-invited-onto-craig-wealands-weekly-blab-and-we-talked-about-comedy-video/", + "post_title": "I was invited onto Craig Wealand\u2019s weekly Blab, and we talked about comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.892143Z", + "index": 2016032001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 336, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/16/336-drinking-scottish-whisky-at-a-german-business-meeting-while-wearing-a-kilt-and-playing-a-flute-and-other-stories-with-carrick-cameron/", + "post_title": "336. Drinking Scottish Whisky at a German Business Meeting While Wearing a Kilt and Playing a Flute\u2026 and other stories (with Carrick Cameron)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.884146Z", + "index": 2016031601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 335, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/13/335-vocabulary-review-phrases-expressions-from-episode-334/", + "post_title": "335. VOCABULARY REVIEW: Phrases & Expressions from Episode 334.", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.876148Z", + "index": 2016031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 334, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/09/334-interview-with-craig-wealand-from-inglespodcast/", + "post_title": "334. Interview with Craig Wealand (from InglesPodcast)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.869151Z", + "index": 2016030901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/04/my-interview-with-school-kids-from-ies-school-in-san-fernando-spain/", + "post_title": "My interview with school kids from IES School in San Fernando, Spain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.860154Z", + "index": 2016030401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 333, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/03/01/333-more-misheard-lyrics-\u266c/", + "post_title": "333. More Misheard Lyrics \u266c", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.853156Z", + "index": 2016030101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 332, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/26/332-olly-richards-english-polyglot-top-advice-and-strategies-for-language-learning/", + "post_title": "332. Olly Richards: English Polyglot \u2013 Top Advice and Strategies for Language Learning", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.844159Z", + "index": 2016022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 331, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/22/331-hows-your-english-and-why-speaking-is-so-important/", + "post_title": "331. How\u2019s your English? (and why speaking is so important)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.837161Z", + "index": 2016022201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 330, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/17/330-lets-play-grand-theft-auto-5-and-learn-some-english-while-doing-it/", + "post_title": "330. Let\u2019s Play\u2026 Grand Theft Auto 5 (and learn some English while doing it)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.829168Z", + "index": 2016021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 329, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/14/329-a-rambling-chat-with-james-news-stories-jokes/", + "post_title": "329. A Rambling Chat with James (News, Stories, Jokes)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.822171Z", + "index": 2016021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 328, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/02/03/328-cooking-with-luke-verbs-and-expressions-in-the-kitchen/", + "post_title": "328. Cooking with Luke \u2013 Verbs and Expressions in the Kitchen", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.814169Z", + "index": 2016020301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 327, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/20/327-the-lep-photo-competition-please-check-out-the-photos-and-vote/", + "post_title": "327. The LEP Photo Competition \u2013 Please check out the photos and vote", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.807171Z", + "index": 2016012002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 326, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/20/326-catching-up-with-oli-future-predictions/", + "post_title": "326. Catching up with Oli / Future Predictions (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.800174Z", + "index": 2016012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 325, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/18/325-catching-up-with-oli-future-predictions/", + "post_title": "325. Catching Up with Oli / Future Predictions (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.792181Z", + "index": 2016011801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 324, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/14/324-david-bowie-part-2/", + "post_title": "324. David Bowie (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.785183Z", + "index": 2016011402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 323, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/14/323-david-bowie-part-1/", + "post_title": "323. David Bowie (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.777186Z", + "index": 2016011401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 322, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/07/322-with-the-thompsons/", + "post_title": "322. With The Thompsons", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.770188Z", + "index": 2016010701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 321, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2016/01/04/321-star-wars-episode-vii-the-force-awakens-spoiler-review/", + "post_title": "321. Star Wars Episode VII: The Force Awakens \u2013 SPOILER REVIEW", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.762190Z", + "index": 2016010401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 320, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/23/320-a-christmas-carol-by-charles-dickens/", + "post_title": "320. A Christmas Carol by Charles Dickens", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.755193Z", + "index": 2015122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 319, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/16/319-star-wars-vii-the-force-awakens-reaction-no-spoilers/", + "post_title": "319. Star Wars VII: The Force Awakens \u2013 Reaction (No spoilers!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.746191Z", + "index": 2015121602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 318, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/16/318-the-rematch-part-2/", + "post_title": "318. The Rematch (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.739193Z", + "index": 2015121601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 317, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/11/the-rematch/", + "post_title": "317. The Rematch (Part 1) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.731196Z", + "index": 2015121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 316, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/07/316-british-comedy-tim-vine-part-2/", + "post_title": "316. British Comedy: Tim Vine (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.724198Z", + "index": 2015120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 315, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/03/315-do-me-a-favour-take-my-business-english-survey/", + "post_title": "315. Do me a favour \u2013 Take my Business English Survey!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.716202Z", + "index": 2015120301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 314, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/12/01/lukes-guided-sleep-meditation/", + "post_title": "314. Luke\u2019s Guided Sleep Meditation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.709203Z", + "index": 2015120101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 313, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/27/313-british-comedy-tim-vine/", + "post_title": "313. British Comedy: Tim Vine", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.701206Z", + "index": 2015112701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 312, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/25/312-the-words-of-the-year-part-3/", + "post_title": "312. The Words of the Year (Part 3) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.694208Z", + "index": 2015112501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 311, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/18/311-the-words-of-the-year-2015-part-2/", + "post_title": "311. The Words of the Year (Part 2) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.687211Z", + "index": 2015111802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 310, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/18/310-the-words-of-the-year-part-1/", + "post_title": "310. The Words of the Year (Part 1) with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.679213Z", + "index": 2015111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/16/attacks-in-paris-13-november-2015-eyewitness-report/", + "post_title": "Attacks in Paris (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.672215Z", + "index": 2015111601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 309, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/11/309-the-lying-game-part-2/", + "post_title": "309. The Lying Game (Part 2) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.664218Z", + "index": 2015111101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 308, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/07/308-the-lying-game-part-1/", + "post_title": "308. The Lying Game (Part 1) With Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.657220Z", + "index": 2015110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 307, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/11/04/307-the-mystery-of-corporate-jargon-management-speak-part-2/", + "post_title": "307. The Mystery of Corporate Jargon & Management Speak (Part 2) with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.650223Z", + "index": 2015110401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 306, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/28/306-corporate-jargon-management-speak-part-1/", + "post_title": "306. The Mystery of Corporate Jargon & Management Speak (Part 1) with Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.642225Z", + "index": 2015102801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 303, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/19/303-the-battle-of-britain/", + "post_title": "303. The Battle of Britain", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.469287Z", + "index": 2015101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 302, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/14/302-bad-dentist-star-wars-adam-buxton-headphone-jams-jarvis-cocker/", + "post_title": "302. Bad Dentist / Star Wars / Adam Buxton / Headphone Jams / Jarvis Cocker", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.461290Z", + "index": 2015101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 301, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/11/301-david-cameron-the-pig-bad-gig-story-who-is-ronnie-pickering/", + "post_title": "301. David Cameron & The Pig / Bad Gig Story / Who is Ronnie Pickering?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.454291Z", + "index": 2015101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 300, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-2/", + "post_title": "300. EPISODE 300 (PART 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.446289Z", + "index": 2015100702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 300, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/10/07/300-episode-300-part-1/", + "post_title": "300. EPISODE 300 (PART 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.438846Z", + "index": 2015100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 299, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/30/299-the-bank-robbery-part-2/", + "post_title": "299. The Bank Robbery (Part 2) (with Amber, Paul and Sebastian)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.431844Z", + "index": 2015093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 298, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/24/298-the-bank-robbery-part-1/", + "post_title": "298. The Bank Robbery (Part 1) (with Amber, Paul & Sebastian)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.423846Z", + "index": 2015092401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 297, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/18/using-humour-in-the-ielts-speaking-test-with-jessica-from-all-ears-english/", + "post_title": "297. Using Humour in the IELTS Speaking Test (With Jessica from All Ears English)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.416859Z", + "index": 2015091801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 296, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/11/296-learning-comedy-is-like-learning-a-language/", + "post_title": "296. Learning Comedy is like Learning a Language (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.408855Z", + "index": 2015091101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 295, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/07/295-california-road-trip-final-part/", + "post_title": "295. California Road Trip (Final Part)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.400859Z", + "index": 2015090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 294, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/02/294-california-road-trip-part-7/", + "post_title": "294. California Road Trip (Part 7)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.392861Z", + "index": 2015090201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 293, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/09/01/293-california-road-trip-part-6/", + "post_title": "293. California Road Trip (Part 6)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.384865Z", + "index": 2015090101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 292, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/31/292-california-road-trip-part-5/", + "post_title": "292. California Road Trip (Part 5)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.377866Z", + "index": 2015083101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 291, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/28/291-california-road-trip-part-4/", + "post_title": "291. California Road Trip (Part 4)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.370868Z", + "index": 2015082801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 290, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/27/290-california-road-trip-part-3/", + "post_title": "290. California Road Trip (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.362866Z", + "index": 2015082701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 289, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/26/289-california-road-trip-part-2/", + "post_title": "289. California Road Trip (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.355868Z", + "index": 2015082602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 288, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/26/288-california-road-trip-part-1/", + "post_title": "288. California Road Trip (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.346871Z", + "index": 2015082601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 287, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/04/287-vocab-battle-with-amber-paul-exciting-title/", + "post_title": "287. VOCAB BATTLE!!! WITH AMBER & PAUL (exciting title)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.338874Z", + "index": 2015080402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 286, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/04/286-the-wedding-episode/", + "post_title": "286. The Wedding Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.330881Z", + "index": 2015080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 285, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/08/03/285/", + "post_title": "285. Ten More Fixed Expressions (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.323884Z", + "index": 2015080301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/22/an-experimental-live-video-podcast-on-periscope/", + "post_title": "An Experimental Live Video Podcast on Periscope", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.315883Z", + "index": 2015072201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 284, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/08/284-questions-from-tea4er-ru-part-2/", + "post_title": "284. Questions from Tea4er.ru (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.308884Z", + "index": 2015070801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 283, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/07/02/283-ten-fixed-expressions/", + "post_title": "283. Ten Fixed Expressions (with Paul Taylor)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.300887Z", + "index": 2015070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 282, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/29/282-questions-from-tea4er-ru/", + "post_title": "282. Questions from Tea4er.ru", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.292894Z", + "index": 2015062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 281, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/17/281-misheard-lyrics/", + "post_title": "281. Misheard Lyrics", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.285896Z", + "index": 2015061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 280, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/14/280-uk-superstitions/", + "post_title": "280. The UK\u2019s Favourite Superstitions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.277899Z", + "index": 2015061401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 279, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/10/279-marcus-keeley-northern-ireland-accent-part-3/", + "post_title": "279. Marcus Keeley / Northern Ireland / Accent (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.270903Z", + "index": 2015061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 278, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/09/278-marcus-keeley-northern-ireland-part-2/", + "post_title": "278. Marcus Keeley / Northern Ireland (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.262899Z", + "index": 2015060902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 277, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/09/277-a-chat-with-marcus-keeley-from-northern-ireland/", + "post_title": "277. A Chat with Marcus Keeley from Northern Ireland (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.255901Z", + "index": 2015060901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/03/survey-what-kind-of-episodes-of-lep-do-you-prefer/", + "post_title": "Survey: What kind of episodes of LEP do you prefer?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.248904Z", + "index": 2015060301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 276, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/06/02/276-qa-session-5/", + "post_title": "276. Q&A Session #5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.240912Z", + "index": 2015060201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 275, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/29/275-the-phrasal-verb-chronicles-2/", + "post_title": "275. The Phrasal Verb Chronicles #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.233914Z", + "index": 2015052901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 274, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/26/274-qa-session-4/", + "post_title": "274. Q&A Session #4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.225916Z", + "index": 2015052601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 273, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/24/273-the-bad-haircut-situation-part-2-more-role-plays-improvisations/", + "post_title": "273. The Bad Haircut Situation Part 2: More Role Plays & Improvisations (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.217918Z", + "index": 2015052401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 272, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/21/272-the-bad-haircut-situation/", + "post_title": "272. The Bad Haircut Situation (with Amber & Paul)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.209921Z", + "index": 2015052101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 271, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/17/catching-up-with-amber-and-paul/", + "post_title": "271. Catching Up with Amber & Paul", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.202919Z", + "index": 2015051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 270, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/15/270-uk-general-election-results/", + "post_title": "270. UK General Election RESULTS", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.194927Z", + "index": 2015051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 269, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/05/269-uk-general-election-2015-part-2/", + "post_title": "269. UK General Election 2015 (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.187928Z", + "index": 2015050501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 268, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/03/268-uk-general-election-2015-part-1/", + "post_title": "268. UK General Election 2015 (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.179931Z", + "index": 2015050301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 267, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/02/267-earthquake-in-nepal-other-news/", + "post_title": "267. Earthquake in Nepal + other news", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.172936Z", + "index": 2015050201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/05/01/lukes-tv-appearance-on-france-24-tv/", + "post_title": "Luke\u2019s TV Appearance on France24", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.164938Z", + "index": 2015050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 266, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/24/266-telling-jokes-in-english-part-3/", + "post_title": "266. Telling Jokes in English (Part 3)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.157938Z", + "index": 2015042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 265, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/23/265-telling-jokes-in-english-part-2/", + "post_title": "265. Telling Jokes in English (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.149937Z", + "index": 2015042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 264, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/20/jokes1/", + "post_title": "264. Telling Jokes in English (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.141944Z", + "index": 2015042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 263, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/04/08/263-past-present-future/", + "post_title": "263. Past, Present & Future", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.134946Z", + "index": 2015040801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/31/lukes-interview-on-inglespodcast/", + "post_title": "Luke\u2019s Interview on InglesPodcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.126948Z", + "index": 2015033101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/17/a-message-from-luke/", + "post_title": "A Message from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.119953Z", + "index": 2015031701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 262, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/03/262-what-is-britishness-part-2/", + "post_title": "262. What is Britishness? (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.111953Z", + "index": 2015030302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 261, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/03/03/261-what-is-britishness-part-1/", + "post_title": "261. What is Britishness? (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.104955Z", + "index": 2015030301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 260, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/26/kingsman/", + "post_title": "260. Kingsman: The Secret Service", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.096958Z", + "index": 2015022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 259, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/24/259-eulogy-for-dennis/", + "post_title": "259. Eulogy for Dennis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.089961Z", + "index": 2015022401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 258, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/17/258-award-win-thank-you-poem/", + "post_title": "258. Award Win / Thank You / Poem", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.081959Z", + "index": 2015021701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 257, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/10/257-be-positive/", + "post_title": "257. Be Positive", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.073966Z", + "index": 2015021001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 256, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/02/01/reading-books-in-english/", + "post_title": "256. Reading Books in English (and listening to them too)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.066964Z", + "index": 2015020101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 255, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/26/255-taken-3-expressions-with-take/", + "post_title": "255. Taken 3 / Expressions with \u2018Take\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.058971Z", + "index": 2015012601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 254, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/22/254-ielts-tips-tricks/", + "post_title": "254. IELTS Tips & Tricks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.051973Z", + "index": 2015012201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 253, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/20/fluency-mc/", + "post_title": "253. Rapping with Fluency MC!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.043975Z", + "index": 2015012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 252, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/16/marooned-with-my-music-james-thompson/", + "post_title": "252. Marooned With My Music: James Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.036978Z", + "index": 2015011601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 251, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/13/251-welcome-to-lep-16-things-you-should-know-about-lep/", + "post_title": "251. Welcome to LEP / 16 Things You Should Know about LEP", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.027981Z", + "index": 2015011301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 250, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/11/250-marooned-with-my-music-gill-thompson/", + "post_title": "250. Marooned With My Music: Gill Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.020983Z", + "index": 2015011101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 249, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/08/249-news-lep-merchandise-messages/", + "post_title": "249. News / LEP Merchandise / Messages", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.012986Z", + "index": 2015010801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 248, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/06/248-marooned-with-my-music-rick-thompson/", + "post_title": "248. Marooned With My Music: Rick Thompson", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:27.005988Z", + "index": 2015010601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 247, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2015/01/03/247-understanding-america/", + "post_title": "247. Understanding The USA", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.997991Z", + "index": 2015010301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 246, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/24/246-flight-stories/", + "post_title": "246. Flight Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.990988Z", + "index": 2014122402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/24/video-one-of-lukes-stand-up-comedy-gigs/", + "post_title": "*Video \u2013 One of Luke\u2019s Stand-up Comedy Gigs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.983991Z", + "index": 2014122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 245, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/23/245-merry-christmas-other-news/", + "post_title": "245. Merry Christmas! (+more) + Video", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.975998Z", + "index": 2014122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 244, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/15/244-urban-myths/", + "post_title": "244. Urban Myths", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.969000Z", + "index": 2014121501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 243, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/11/243-a-life-changing-teaching-experience-in-ghana/", + "post_title": "243. A Life-Changing Teaching Experience in Ghana", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.961002Z", + "index": 2014121101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 242, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/07/242-11-idioms-only-brits-understand-really/", + "post_title": "242. 11 Idioms Only Brits Understand (really?)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.954005Z", + "index": 2014120701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 241, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/02/241-star-wars/", + "post_title": "241. Star Wars", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.946008Z", + "index": 2014120202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 240, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/12/02/240-politicians-avoiding-questions/", + "post_title": "240. Politicians Avoiding Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.939011Z", + "index": 2014120201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 239, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/26/239-prepositions-verb-collocations/", + "post_title": "239. Prepositions: Verb Collocations", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.931013Z", + "index": 2014112601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 238, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/24/238-prepositions-failed-attempt/", + "post_title": "238. Prepositions (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.924015Z", + "index": 2014112401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 237, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/18/237-opp-other-peoples-podcasts-part-2/", + "post_title": "237. OPP: Other People\u2019s Podcasts (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.916014Z", + "index": 2014111802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 236, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/18/236-opp-other-peoples-podcasts-part-1/", + "post_title": "236. OPP: Other People\u2019s Podcasts (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.908020Z", + "index": 2014111801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/16/my-appearance-on-the-talk2learn-chatcast/", + "post_title": "*My Appearance on the Talk2Learn Chatcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.901022Z", + "index": 2014111601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 235, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/14/british-slang-n-to-z/", + "post_title": "235. British Slang (N to Z)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.893025Z", + "index": 2014111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 234, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/11/234-making-choons-with-jim/", + "post_title": "234. Making \u201cChoons\u201d with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.886027Z", + "index": 2014111101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 233, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/07/233-yep-winner-edgar-hernandez/", + "post_title": "233. YEP! Winner", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.878030Z", + "index": 2014110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 232, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/06/232-yep-runners-up-part-2/", + "post_title": "232. YEP! Runners Up (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.871027Z", + "index": 2014110602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 231, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/06/231-yep-runners-up-part-1/", + "post_title": "231. YEP! Runners Up (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.862030Z", + "index": 2014110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 230, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/11/04/230-can-you-learn-a-language-in-6-months/", + "post_title": "230. Can You Learn a Language in 6 Months?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.855032Z", + "index": 2014110401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 229, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/30/229-zombies-part-2/", + "post_title": "229. Zombies! (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.846036Z", + "index": 2014103002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 228, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/30/228-zombies/", + "post_title": "228. Zombies! (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.839038Z", + "index": 2014103001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 227, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/27/227-sausages-barcodes-apple-watches/", + "post_title": "227. Sausages, Barcodes & Apple Watches", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.831041Z", + "index": 2014102701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/25/my-video-interview-with-gabby-wallace/", + "post_title": "*My Video Interview with Gabby Wallace from \u201cGo Natural English\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.824043Z", + "index": 2014102501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 226, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/21/226-on-a-boat/", + "post_title": "226. On a Boat", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.816046Z", + "index": 2014102101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 225, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/16/film-club-taken/", + "post_title": "225. Film Club: \u201cTaken\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.809048Z", + "index": 2014101601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 224, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/13/pronunciation-verb-tenses-connected-speech/", + "post_title": "224. Pronunciation: Verb Tenses & Connected Speech", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.802051Z", + "index": 2014101301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/10/please-consider-donating-to-lepra-org-uk/", + "post_title": "*Please Consider Donating to Lepra.org.uk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.793053Z", + "index": 2014101001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 223, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/10/07/223-yep-competition-winners/", + "post_title": "223. YEP! Competition Winners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.786056Z", + "index": 2014100701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 222, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/30/222-lukes-late-night-podcast/", + "post_title": "222. Luke\u2019s Late Night Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.778063Z", + "index": 2014093001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/26/video-playing-around-with-accents-in-english/", + "post_title": "Video: Playing Around with Accents in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.771065Z", + "index": 2014092601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 221, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/23/221-a-cup-of-tea-with-corneliu-dragomirescu-part-2/", + "post_title": "221. A Cup of Tea with Corneliu Dragomirescu (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.763068Z", + "index": 2014092301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 220, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/17/220-a-cup-of-tea-with-corneliu-dragomirescu/", + "post_title": "220. A Cup of Tea with Corneliu Dragomirescu", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.756071Z", + "index": 2014091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 219, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/10/scottish-independence/", + "post_title": "219. Scottish Independence", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.748073Z", + "index": 2014091001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 218, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/218-yep-competition-entries-8/", + "post_title": "218. YEP! Competition Entries #8", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.741075Z", + "index": 2014090708, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 217, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/217-yep-competition-entries-7/", + "post_title": "217. YEP! Competition Entries #7", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.733073Z", + "index": 2014090707, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 216, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/216-yep-competition-entries-6/", + "post_title": "216. YEP! Competition Entries #6", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.725075Z", + "index": 2014090706, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 215, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/215-yep-competition-entries-5/", + "post_title": "215. YEP! Competition Entries #5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.718083Z", + "index": 2014090705, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 214, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/214-yep-competition-entries-4/", + "post_title": "214. YEP! Competition Entries #4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.710085Z", + "index": 2014090704, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 213, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/213-yep-competition-entries-3/", + "post_title": "213. YEP! Competition Entries #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.703087Z", + "index": 2014090703, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 212, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/212-yep-competition-entries-2/", + "post_title": "212. YEP! Competition Entries #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.695090Z", + "index": 2014090702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 211, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/07/211-yep-competition-entries-1/", + "post_title": "211. YEP! Competition Entries #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.688092Z", + "index": 2014090701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 210, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/09/04/210-a-bit-of-a-chat-with-noman-hosni/", + "post_title": "210. A Cup of Tea with Noman Hosni", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.680095Z", + "index": 2014090401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 209, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/29/209-travelling-in-indonesia-part-2/", + "post_title": "209. Travelling in Indonesia (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.673097Z", + "index": 2014082902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 208, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/29/208-travelling-in-indonesia-part-1/", + "post_title": "208. Travelling in Indonesia (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.665095Z", + "index": 2014082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 207, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/08/competition-inspiration/", + "post_title": "207. Competition Inspiration", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.658097Z", + "index": 2014080801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 206, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/06/205-summer-in-london-part-2/", + "post_title": "206. Summer in London (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.650101Z", + "index": 2014080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 205, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/05/205-summer-in-london-part-1/", + "post_title": "205. Summer in London (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.642102Z", + "index": 2014080502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 204, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/05/204-quick-hello-competition-update-more-news/", + "post_title": "204. Quick Hello: Competition Update & More News", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.635106Z", + "index": 2014080501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 203, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/04/203-the-flatmate-from-japan/", + "post_title": "203. The Flatmate from Japan", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.627107Z", + "index": 2014080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 202, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/08/01/202-british-comedy-monty-python-the-holy-grail/", + "post_title": "202. British Comedy: Monty Python & The Holy Grail", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.620110Z", + "index": 2014080101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/30/my-interview-on-zdeneks-english-podcast/", + "post_title": "My Interview on Zden\u011bk\u2019s English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.612113Z", + "index": 2014073001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 201, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/28/201-nikolay-kulikov-a-russian-comedian-in-london/", + "post_title": "201. Nikolay Kulikov: A Russian Comedian in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.605115Z", + "index": 2014072801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 200, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/25/200-new-competition-your-english-podcast/", + "post_title": "200. New Competition: \u201cYour English Podcast\u201d", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.597118Z", + "index": 2014072501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 199, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/17/199-the-ukusa-quiz/", + "post_title": "199. The UK/USA Quiz", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.590119Z", + "index": 2014071702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 198, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/17/198-a-cup-of-tea-with-molly-martinez/", + "post_title": "198. A Cup of Tea with Molly Martinez", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.582123Z", + "index": 2014071701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 197, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/15/197-world-cup-2014-part-6-final-comments/", + "post_title": "197. World Cup 2014 (Part 6: Final Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.575125Z", + "index": 2014071501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 196, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/07/196-cycling-from-coast-to-coast/", + "post_title": "196. Cycling from Coast to Coast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.567128Z", + "index": 2014070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 195, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/04/195-british-comedy-monty-pythons-flying-circus/", + "post_title": "195. British Comedy: Monty Python\u2019s Flying Circus", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.558130Z", + "index": 2014070401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 194, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/07/01/world-cup-2014-part-5-more-forum-comments/", + "post_title": "194. World Cup 2014 (Part 5: More Forum Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.551133Z", + "index": 2014070101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 192, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/30/192-culture-shock-life-in-london-part-1/", + "post_title": "192. Culture Shock: Life in London (Pt.1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.468160Z", + "index": 2014063001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 191, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/25/191-culture-shock-the-4-stages/", + "post_title": "191. Culture Shock: The 4 Stages", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.460162Z", + "index": 2014062501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 190, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/23/190-world-cup-2014-part-4-some-history/", + "post_title": "190. World Cup 2014 (Part 4: Dad\u2019s Memories of 1966)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.453164Z", + "index": 2014062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 189, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/20/189-world-cup-2014-part-3-your-comments/", + "post_title": "189. World Cup 2014 (Part 3: Your Comments)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.445167Z", + "index": 2014062001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 188, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/18/188-world-cup-2014-part-2-england-the-dark-side-of-the-world-cup/", + "post_title": "188. World Cup 2014 (Part 2: England & The Dark Side of the World Cup)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.438169Z", + "index": 2014061802, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 187, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/18/187-world-cup-2014-part-1/", + "post_title": "187. World Cup 2014 (Part 1: The Basic Guide)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.430172Z", + "index": 2014061801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 186, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/16/understanding-culture-shock/", + "post_title": "186. Understanding Culture Shock with Lindsay & Gabby", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.423175Z", + "index": 2014061601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 185, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/13/the-trip-to-new-york/", + "post_title": "185. The Trip to New York", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.414177Z", + "index": 2014061301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/11/welcome-to-the-new-website-teacherluke-co-uk/", + "post_title": "Welcome to the New Website \u2013 teacherluke.co.uk", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.406180Z", + "index": 2014061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 184, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/10/184-lukes-d-day-diary-part-2/", + "post_title": "184. Luke\u2019s D-Day Diary (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.399183Z", + "index": 2014061002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 183, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/06/10/183-lukes-d-day-diary/", + "post_title": "183. Luke\u2019s D-Day Diary", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.391190Z", + "index": 2014061001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 182, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/30/182-learning-english-with-yacine-belhousse/", + "post_title": "182. Learning English with Yacine Belhousse", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.384187Z", + "index": 2014053001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/28/my-interview-on-all-ears-english-podcast/", + "post_title": "My Interview on the All Ears English Podcast \u2013 Talking about humour, comedy and how to tell jokes in English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.376190Z", + "index": 2014052801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 181, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/23/181-vocabulary-expressions-from-episode-180/", + "post_title": "181. Vocabulary & Expressions from Episode 180", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.368193Z", + "index": 2014052301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 180, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/20/180-dislocated-shoulder/", + "post_title": "180. How my Brother Dislocated his Shoulder (with James)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.359195Z", + "index": 2014052001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 179, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/05/15/179-the-ramblings-of-an-exhausted-teacher/", + "post_title": "179. The Ramblings of an Exhausted Teacher", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.352198Z", + "index": 2014051501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 178, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/30/178-im-still-here/", + "post_title": "178. I\u2019m Still Here", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.343206Z", + "index": 2014043001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/06/a-letter-to-my-listeners/", + "post_title": "A Letter to My Listeners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.336207Z", + "index": 2014040601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 177, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/04/01/177-what-londoners-say-vs-what-they-mean/", + "post_title": "177. What Londoners Say vs What They Mean", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.328210Z", + "index": 2014040101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 176, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/24/176-grammar-verb-tense-review/", + "post_title": "176. Grammar: Verb Tense Review", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.321212Z", + "index": 2014032401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 175, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/18/175-the-phrasal-verb-chronicles-1/", + "post_title": "175. The Phrasal Verb Chronicles #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.313211Z", + "index": 2014031801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 174, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/12/174-how-to-learn-english-with-lukes-english-podcast/", + "post_title": "174. How to Learn English with Luke\u2019s English Podcast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.306213Z", + "index": 2014031201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 173, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/03/06/173-the-curse-of-the-lambton-worm/", + "post_title": "173. The Curse of The Lambton Worm", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.298220Z", + "index": 2014030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 172, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/26/172-british-comedy-peter-cook-dudley-moore/", + "post_title": "172. British Comedy: Peter Cook & Dudley Moore", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.291222Z", + "index": 2014022601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 171, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/21/171-a-cup-of-tea-with-daniel-burt-part-2/", + "post_title": "171. A Cup of Tea with Daniel Burt (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.283221Z", + "index": 2014022101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 170, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/19/170-basking-in-my-moment-of-glory/", + "post_title": "170. Basking in My Moment of Glory", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.276227Z", + "index": 2014021901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 169, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/15/danielburt/", + "post_title": "169. A Cup of Tea with Daniel Burt (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.268225Z", + "index": 2014021501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 168, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/11/168-please-vote-and-stuff-like-that/", + "post_title": "168. Please Vote! (and stuff like that)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.261232Z", + "index": 2014021101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 167, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/02/05/167-memory-mnemonics-learning-english/", + "post_title": "167. Memory, Mnemonics & Learning English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.253235Z", + "index": 2014020501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 166, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/31/166-the-prawn-story/", + "post_title": "166. The Prawn Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.245237Z", + "index": 2014013101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 165, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/23/english-premier-league-football/", + "post_title": "165. English Premier League Football", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.238240Z", + "index": 2014012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 164, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/21/164-transcript-collaboration/", + "post_title": "164. Transcript Collaboration", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.231242Z", + "index": 2014012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 163, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/15/163-skype-chat-with-my-brother/", + "post_title": "163. Skype Chat with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.223244Z", + "index": 2014011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 162, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/10/162-having-babies-vocabulary-a-male-perspective/", + "post_title": "162. Having Babies: Vocabulary / A Male Perspective", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.216244Z", + "index": 2014011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 161, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2014/01/09/161-shes-having-a-baby/", + "post_title": "161. She\u2019s Having a Baby", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.208245Z", + "index": 2014010901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 160, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/24/160-the-a-to-z-of-christmas/", + "post_title": "160. The A to Z of Christmas", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.201248Z", + "index": 2013122401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 158, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/23/158-159-a-cup-of-christmas-tea-with-paul-taylor/", + "post_title": "158 & 159. A Cup of Christmas Tea with\u2026 Paul Taylor", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.193255Z", + "index": 2013122302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 157, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/23/157-a-cup-of-coffee-with-sarah-donnelly-part-2/", + "post_title": "157. A Cup of Coffee with\u2026 Sarah Donnelly (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.186252Z", + "index": 2013122301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 156, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/12/156-british-comedy-ali-g/", + "post_title": "156. British Comedy: Ali G", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.178254Z", + "index": 2013121201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 155, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/12/05/155-a-cup-of-coffee-with-sarah-donnelly/", + "post_title": "155. A Cup of Coffee with\u2026 Sarah Donnelly", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.171257Z", + "index": 2013120501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 154, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/27/154-british-slang-h-to-m/", + "post_title": "154. British Slang (H to M)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.163260Z", + "index": 2013112701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 153, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/20/153-the-talking-dog-story/", + "post_title": "153. The Talking Dog Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.156262Z", + "index": 2013112001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/14/doctor-who-episode-language-analysis/", + "post_title": "Doctor Who Episode \u2013 Language Analysis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.148264Z", + "index": 2013111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 152, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/11/06/152-im-leaving-podomatic-and-moving-to-audioboo-fm/", + "post_title": "152. I\u2019m leaving Podomatic\u2026 and moving to Audioboo.fm", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.141267Z", + "index": 2013110601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 151, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/25/151-google-questions/", + "post_title": "151. Google Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.133271Z", + "index": 2013102502, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 150, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/25/150-british-slang-d-to-g/", + "post_title": "150. British Slang (D to G)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.125272Z", + "index": 2013102501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 149, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/10/15/149-backing-up-into-the-cloud/", + "post_title": "149. Backing Up Into The Cloud", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.117276Z", + "index": 2013101501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 148, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/12/148-british-slang-a-to-c/", + "post_title": "148. British Slang (A to C)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.108278Z", + "index": 2013091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 147, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/08/147-idioms-and-expressions-from-episodes-145-146/", + "post_title": "147. Idioms and Expressions from Episodes 145 & 146", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.101281Z", + "index": 2013090801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 146, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/05/146-nightmare-teaching-experiences-part-2/", + "post_title": "146. Nightmare Teaching Experiences (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.093287Z", + "index": 2013090501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 145, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/09/02/145-nightmare-teaching-experiences-part-1/", + "post_title": "145. Nightmare Teaching Experiences (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.086290Z", + "index": 2013090201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 144, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/29/144-the-chaos-of-english-pronunciation/", + "post_title": "144. The Chaos of English Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.078288Z", + "index": 2013082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 143, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/19/143-a-cup-of-tea-with-robert-hoehn/", + "post_title": "143. A Cup of Tea with\u2026 Robert Hoehn", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.071295Z", + "index": 2013081901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 142, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/04/142-the-annual-general-meeting-part-2/", + "post_title": "142. The Annual General Meeting (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.063299Z", + "index": 2013080402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 141, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/08/04/141-the-annual-general-meeting-part-1/", + "post_title": "141. The Annual General Meeting (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.056301Z", + "index": 2013080401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 140, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/31/140-ghost-stories/", + "post_title": "140. Ghost Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.048304Z", + "index": 2013073101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 139, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/09/139-hard-driving/", + "post_title": "139. Hard Driving", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.041307Z", + "index": 2013070901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 138, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/07/07/138-discussing-movies-part-2/", + "post_title": "138. Discussing Movies (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.033307Z", + "index": 2013070701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 137, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/29/137-discussing-movies-part-1/", + "post_title": "137. Discussing Movies (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.025310Z", + "index": 2013062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 136, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/23/136-clycling-from-london-to-paris/", + "post_title": "136. Cycling from London to Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.018312Z", + "index": 2013062301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 135, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/17/135-raining-animals/", + "post_title": "135. Raining Animals", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.010315Z", + "index": 2013061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 134, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/11/134-the-story-of-salvo/", + "post_title": "134. The Story of Salvo", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:26.003317Z", + "index": 2013061101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/04/old-comments/", + "post_title": "Old Comments Box Archive", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.995320Z", + "index": 2013060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 133, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/06/01/133-hip-hop-lyric-analysis/", + "post_title": "133. Hip-Hop Lyric Analysis", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.988322Z", + "index": 2013060101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 132, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/05/17/132-pronouncing-ed-endings-with-added-romance-and-horror/", + "post_title": "132. Pronouncing ~ed Endings (with Added Romance and Horror)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.979325Z", + "index": 2013051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 131, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/05/01/131-rickipedia/", + "post_title": "131. Rickipedia", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.972327Z", + "index": 2013050101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 130, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/17/130-a-cup-of-tea-with-sebastian-marx/", + "post_title": "130. A Cup of Tea with\u2026 Sebastian Marx", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.963330Z", + "index": 2013041701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 129, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/10/129-a-cup-of-tea-with-pierre-gaspard/", + "post_title": "129. A Cup of Tea with\u2026 Pierre Gaspard", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.956332Z", + "index": 2013041001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 128, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/04/07/795/", + "post_title": "128. Luke\u2019s Stand-Up Comedy Show", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.949331Z", + "index": 2013040701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/03/26/mini-podcast-feeling-nervous/", + "post_title": "Mini Podcast \u2013 Feeling Nervous", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.941332Z", + "index": 2013032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 127, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/03/04/127-computer-games/", + "post_title": "127. Computer Games", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.934335Z", + "index": 2013030401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 126, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/02/20/126-your-emails-comments-and-questions/", + "post_title": "126. Your Emails, Comments and Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.925344Z", + "index": 2013022001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 125, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/02/14/125-the-pink-gorilla-story/", + "post_title": "125. The Pink Gorilla Story", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.918340Z", + "index": 2013021401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/23/another-award-winning-year/", + "post_title": "Another Award-Winning Year!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.910349Z", + "index": 2013012302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 124, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/23/124-james-bond/", + "post_title": "124. James Bond", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.903351Z", + "index": 2013012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/21/downloading-problems/", + "post_title": "Thanks for Voting / Downloading Problems", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.895354Z", + "index": 2013012101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 123, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/20/123-whats-been-going-on/", + "post_title": "123. What\u2019s Been Going On?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.888356Z", + "index": 2013012001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2013/01/10/competition-time-again/", + "post_title": "Competition Time Again!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.880360Z", + "index": 2013011001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 122, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/12/20/122-the-end-of-the-world/", + "post_title": "122. The End of the World?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.873362Z", + "index": 2012122001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 121, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/12/10/121-americanisms-part-2/", + "post_title": "121: Americanisms (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.866358Z", + "index": 2012121001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 120, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/11/10/120-americanisms/", + "post_title": "120. Americanisms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.857366Z", + "index": 2012111001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 119, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/17/119-first-impressions-of-life-in-paris/", + "post_title": "119. First Impressions of Life in Paris", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.850363Z", + "index": 2012101702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 118, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/17/118-sick-in-japan/", + "post_title": "118. Sick in Japan", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.841366Z", + "index": 2012101701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 117, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/11/117-psychics-cold-reading-barnum-statements/", + "post_title": "117. Psychics / Cold Reading / Barnum Statements", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.833368Z", + "index": 2012101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 116, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/10/116-could-it-be-you/", + "post_title": "116. Could it be you\u2026?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.826370Z", + "index": 2012101001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 115, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/04/115-a-chat-about-music/", + "post_title": "115. A Chat About Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.818377Z", + "index": 2012100401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 114, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/10/02/693/", + "post_title": "114. Twelve Natural Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.810380Z", + "index": 2012100201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 112, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/20/vocabulary-review-episodes-1-11/", + "post_title": "112. Vocabulary Review \u2013 Episodes 1-11", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.745401Z", + "index": 2012092001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 111, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/17/thanks-for-your-comments/", + "post_title": "111. Thanks for your comments", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.738404Z", + "index": 2012091701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 110, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/09/12/a-letter-from-luke/", + "post_title": "110. A Letter from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.730406Z", + "index": 2012091201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 109, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/29/friday-night-banter-aka-the-slightly-drunk-episode/", + "post_title": "109. Friday Night Banter (aka The Slightly Drunk Episode)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.723409Z", + "index": 2012082901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/06/london-olympics-2012/", + "post_title": "London Olympics 2012 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.715408Z", + "index": 2012080602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 108, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/08/06/in-bed-with-luke/", + "post_title": "108. In Bed with Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.708413Z", + "index": 2012080601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 107, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/07/02/messing-around-with-accents-and-voices/", + "post_title": "107. Messing Around with Accents and Voices", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.700412Z", + "index": 2012070201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 106, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/29/brighton-fringe-festival-3/", + "post_title": "106. Brighton Fringe Festival #3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.692419Z", + "index": 2012062901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 105, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/17/brighton-fringe-festival-2/", + "post_title": "105. Brighton Fringe Festival #2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.685421Z", + "index": 2012061701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 104, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/07/brighton-fringe-festival-1/", + "post_title": "104. Brighton Fringe Festival #1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.677423Z", + "index": 2012060701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 103, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/06/04/the-queen-and-the-royal-family/", + "post_title": "103. The Queen and The Royal Family", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.670426Z", + "index": 2012060401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 102, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/30/competition-winners/", + "post_title": "102. Competition Winners", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.662428Z", + "index": 2012053001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 101, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/17/a-note-from-luke/", + "post_title": "101. A Note from Luke", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.655431Z", + "index": 2012051701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 100, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/05/12/going-to-the-pub/", + "post_title": "100. Going To The Pub", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.647429Z", + "index": 2012051201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 99, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/29/the-rotary-sushi-bar-of-english/", + "post_title": "99. The Rotary Sushi Bar of English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.640431Z", + "index": 2012042901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 98, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/28/luke-vs-oliver-part-2/", + "post_title": "98. Luke vs Oliver (Part 2)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.632434Z", + "index": 2012042801, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 97, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/20/luke-vs-oliver-part-1/", + "post_title": "97. Luke vs Oliver (Part 1)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.625436Z", + "index": 2012042001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 94, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/12/competition-entries/", + "post_title": "94 \u2013 96. Competition Entries", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.617439Z", + "index": 2012041201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 93, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/11/weird-or-just-different/", + "post_title": "93. Weird\u2026 or just different?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.610441Z", + "index": 2012041101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 92, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/uk-royal-family-opinions-video-part-2-video-uploading-now-on-youtube/%20", + "post_title": "92. UK Royal Family Opinions \u2013 Video (Part 2) [TRANSCRIPT]", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.602443Z", + "index": 2012041004, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/competition-update/", + "post_title": "Competition Update", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.594446Z", + "index": 2012041003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 91, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/the-a-to-z-of-random-thoughts/", + "post_title": "91. The A to Z of Random Thoughts", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.587448Z", + "index": 2012041002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 90, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/04/10/competition-phrasal-verbs-a-b-c/", + "post_title": "90. Competition + Phrasal Verbs A, B + C", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.580451Z", + "index": 2012041001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 89, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/13/a-day-in-the-life/", + "post_title": "89. A Day In The Life", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.573453Z", + "index": 2012031301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 88, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/12/how-to-play-the-drums/", + "post_title": "88. How To Play The Drums", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.564456Z", + "index": 2012031201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 87, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/07/6-idioms-and-6-phrasal-verbs/", + "post_title": "87. 6 Idioms and 6 Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.557459Z", + "index": 2012030702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 86, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/07/criminal-law/", + "post_title": "86. Criminal Law", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.549462Z", + "index": 2012030701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 85, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/06/a-stand-up-comedy-gig/", + "post_title": "85. A Stand-up Comedy Gig", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.540470Z", + "index": 2012030602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 84, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/03/06/lukes-english-braincast/", + "post_title": "84. Luke\u2019s English Braincast", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.532468Z", + "index": 2012030601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 83, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/how-to-swear-in-british-english-very-rude-content/", + "post_title": "83. How to Swear in British English \u2013 VERY RUDE CONTENT", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.523474Z", + "index": 2012013003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 82, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/voting-elections-politics-government/", + "post_title": "82. Voting / Elections / Politics / Government", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.515473Z", + "index": 2012013002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 81, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/30/what-makes-a-great-teacher/", + "post_title": "81. What Makes a Great Teacher?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.508479Z", + "index": 2012013001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 80, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/essential-social-english/", + "post_title": "80. Essential Social English", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.500477Z", + "index": 2012012304, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 79, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/family-arguments-and-debates/", + "post_title": "79. Family Arguments and Debates", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.493484Z", + "index": 2012012303, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 78, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/christmas-its-all-about-family/", + "post_title": "78. Christmas \u2013 It\u2019s all about Family", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.486486Z", + "index": 2012012302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 77, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/23/bear-vs-shark/", + "post_title": "77. Bear vs Shark", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.478489Z", + "index": 2012012301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 0, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2012/01/15/vote-for-lukes-english-podcast/", + "post_title": "VOTE FOR LUKE\u2019S ENGLISH PODCAST", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.470491Z", + "index": 2012011501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 76, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/07/mind-the-gap-how-to-use-the-london-underground/", + "post_title": "76. Mind The Gap \u2013 How to use the London Underground", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.462494Z", + "index": 2011110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 75, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/03/258/", + "post_title": "75. Not a Distraction!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.455496Z", + "index": 2011110302, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 74, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/11/03/uk-royal-family-opinions-english-interviews-in-london/", + "post_title": "74. UK Royal Family Opinions \u2013 English Interviews in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.447499Z", + "index": 2011110301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 73, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/steve-jobs/", + "post_title": "73. Steve Jobs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.440501Z", + "index": 2011101408, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 72, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/the-cheese-episode/", + "post_title": "72. The Cheese Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.433504Z", + "index": 2011101407, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 71, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/the-ice-cream-episode/", + "post_title": "71. The Ice Cream Episode", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.425507Z", + "index": 2011101406, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 70, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/language-and-music/", + "post_title": "70. Language and Music", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.418506Z", + "index": 2011101405, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 69, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/common-errors-typical-mistakes/", + "post_title": "69. Common Errors / Typical Mistakes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.410511Z", + "index": 2011101404, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 68, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/childhood-growing-up-school-days-phrasal-verbs-and-expressions/", + "post_title": "68. Childhood / Growing Up / School Days \u2013 Phrasal Verbs and Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.402514Z", + "index": 2011101403, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 67, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/cockney-london-accent/", + "post_title": "67. Cockney / London Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.394518Z", + "index": 2011101402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 66, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/14/top-advice-for-learning-english-idioms-with-say-culture-shock/", + "post_title": "66. Top Advice for Learning English / Idioms with \u2018say\u2019 / Culture Shock", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.387521Z", + "index": 2011101401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 65, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", + "post_title": "65. London Video Interviews Pt 5", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.379523Z", + "index": 2011101211, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 64, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/london-video-interviews-pt-5/", + "post_title": "64. London Video Interviews Part 5 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.372524Z", + "index": 2011101210, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 63, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/german-and-british-cultural-identity-paco-erhard-interview-part-2/", + "post_title": "63. German and British Cultural Identity \u2013 Paco Erhard interview part 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.364522Z", + "index": 2011101209, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 62, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/learning-english-advice-from-a-german-comedian-living-in-london/", + "post_title": "62. Learning English \u2013 Advice from a German comedian living in London", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.356524Z", + "index": 2011101208, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 61, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/127-hours-hand-idioms/", + "post_title": "61. 127 Hours / \u2018Hand\u2019 Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.349528Z", + "index": 2011101207, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 60, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/the-kings-speech-mouth-idioms/", + "post_title": "60. The King\u2019s Speech / \u2018Mouth\u2019 Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.340529Z", + "index": 2011101206, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 59, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/billy-connolly-interview-more-scottish-accent/", + "post_title": "59. Billy Connolly Interview / More Scottish Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.332533Z", + "index": 2011101205, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 58, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/scotland-scottish-accent/", + "post_title": "58. Scotland / Scottish Accent", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.325539Z", + "index": 2011101204, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 57, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/birmingham-accent-12-phrasal-verbs-with-the-letter-a/", + "post_title": "57. Birmingham Accent / 12 Phrasal Verbs with the letter \u2018A\u2019", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.317543Z", + "index": 2011101203, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 56, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/british-accents-and-dialects/", + "post_title": "56. British Accents and Dialects", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.310544Z", + "index": 2011101202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 55, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/12/mini-podcasts-collection-1/", + "post_title": "55. Mini Podcasts Collection 1", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.302543Z", + "index": 2011101201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 54, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/halloween-guy-fawkes-night/", + "post_title": "54. Halloween / Guy Fawkes Night", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.295549Z", + "index": 2011101112, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 53, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/discussing-grammar-with-my-brother/", + "post_title": "53. Discussing Grammar with My Brother", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.287554Z", + "index": 2011101111, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 52, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/154/", + "post_title": "52. London Video Interviews Part 4", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.280550Z", + "index": 2011101110, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 51, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/luke-answers-your-emails-and-questions/", + "post_title": "51. Luke Answers Your Emails and Questions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.273552Z", + "index": 2011101109, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 50, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/good-things-come-to-those-who-wait/", + "post_title": "50. Good Things Come To Those Who Wait", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.265555Z", + "index": 2011101108, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 49, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/stand-up-comedy/", + "post_title": "49. Stand Up Comedy", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.258561Z", + "index": 2011101107, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 48, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/useful-expressions-for-travelling/", + "post_title": "48. Useful Expressions for Travelling", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.250559Z", + "index": 2011101106, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 47, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/travelling-in-vietnam/", + "post_title": "47. Travelling in Vietnam", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.243561Z", + "index": 2011101105, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 46, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/46-im-on-holiday-ill-be-back-in-a-couple-of-weeks/", + "post_title": "46. I\u2019m on Holiday! I\u2019ll be back in a couple of weeks", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.236564Z", + "index": 2011101104, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 45, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/luke-andys-crime-stories/", + "post_title": "45. Luke & Andy\u2019s Crime Stories", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.228571Z", + "index": 2011101103, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 44, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/telling-anecdotes/", + "post_title": "44. Telling Anecdotes", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.221569Z", + "index": 2011101102, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 43, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/10/11/notting-hill-carnival-video-frustration-out-takes/", + "post_title": "43. Notting Hill Carnival Video Frustration (Out-takes)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.213576Z", + "index": 2011101101, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 42, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", + "post_title": "42. London Video Interviews Pt 3 (Audio)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.205578Z", + "index": 2011032902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 41, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2011/03/29/london-video-interviews-pt-3/", + "post_title": "41. London Video Interviews Part 3 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.197581Z", + "index": 2011032901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 40, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/health-feeling-ill-phrasal-verbs-expressions/", + "post_title": "40. Health / Feeling ill \u2013 Phrasal Verbs & Expressions", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.190583Z", + "index": 2010032604, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 39, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/subtitles-in-videos/", + "post_title": "39. Subtitles in Videos (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.183581Z", + "index": 2010032603, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 38, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/116/", + "post_title": "38. London Video Interviews Part 2 (Audio)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.175583Z", + "index": 2010032602, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 37, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2010/03/26/116/", + "post_title": "37. London Video Interviews Part 2 (Video)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:25.168586Z", + "index": 2010032601, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 33, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/15/money-money-money-12-phrasal-verbs-more/", + "post_title": "33. Money Money Money \u2013 12 Phrasal Verbs & more\u2026", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.943456Z", + "index": 2009111501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 32, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/doctor-who/", + "post_title": "32. Doctor Who", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.936456Z", + "index": 2009111403, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 31, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/hello-argument-sketch/", + "post_title": "31. Hello! / Argument Sketch", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.929459Z", + "index": 2009111402, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 30, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/14/the-mystery-continues/", + "post_title": "30. The Mystery Continues\u2026", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.922462Z", + "index": 2009111401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 29, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/12/mystery-story-narrative-tenses/", + "post_title": "29. Mystery Story / Narrative Tenses", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.914464Z", + "index": 2009111202, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 28, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/12/interview-with-a-native-speaker-the-weather/", + "post_title": "28. Interview with a Native Speaker \u2013 The Weather", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.907466Z", + "index": 2009111201, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 27, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/10/british-weather-lots-of-exciting-vocabulary/", + "post_title": "27. British Weather (Lots of exciting vocabulary!!!)", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.899465Z", + "index": 2009111002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 26, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/10/are-you-a-good-learner-of-english/", + "post_title": "26. Are you a good learner of English?", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.892471Z", + "index": 2009111001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 25, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/07/notting-hill-carnival-40-phrasal-verbs/", + "post_title": "25. Notting Hill Carnival \u2013 40 Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.884469Z", + "index": 2009110702, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 24, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/11/07/music-idioms/", + "post_title": "24. Music Idioms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.876477Z", + "index": 2009110701, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 23, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/summer-music-festivals/", + "post_title": "23. Summer Music Festivals", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.869479Z", + "index": 2009102003, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 22, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/full-interview-with-vicky-from-china/", + "post_title": "22. Full Interview with Vicky from China", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.860483Z", + "index": 2009102002, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 21, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/20/learning-english-with-podcasts-advice-from-a-chinese-student-at-oxford-university/", + "post_title": "21. Learning English with Podcasts \u2013 Advice from a Chinese student at Oxford University", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.853485Z", + "index": 2009102001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 20, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/beware-of-bad-pronunciation/", + "post_title": "20. Beware of Bad Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.844482Z", + "index": 2009101913, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 19, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/passive-verb-forms/", + "post_title": "19. Passive Verb Forms", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.837490Z", + "index": 2009101912, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 18, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/46/", + "post_title": "18. 10 More Phrasal Verbs", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.829492Z", + "index": 2009101911, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 17, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/hello-to-my-listeners-around-the-world/", + "post_title": "17. Hello To My Listeners Around The World", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.822494Z", + "index": 2009101910, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 14, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-10-british-and-american-pronunciation/", + "post_title": "14. British & American Pronunciation", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.658549Z", + "index": 2009101907, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 13, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/video-podcast-i-like-it/", + "post_title": "13. Video Podcast \u2013 I LIKE IT!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.651550Z", + "index": 2009101906, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 12, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-3/", + "post_title": "12. Extra Podcast \u2013 Quick Hello 3", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.643553Z", + "index": 2009101905, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 11, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-9-men-vs-women/", + "post_title": "11. Men vs Women", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.636555Z", + "index": 2009101904, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 10, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/extra-podcast-quick-hello-2/", + "post_title": "10. Extra Podcast \u2013 Quick Hello 2", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.628553Z", + "index": 2009101903, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 9, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-8-travelling-in-india/", + "post_title": "9. Travelling in India", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.621555Z", + "index": 2009101902, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 8, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/10/19/episode-7-dating-and-relationships/", + "post_title": "8. Dating and Relationships", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.613562Z", + "index": 2009101901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 7, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/30/episode-6-susan-boyle/", + "post_title": "7. Susan Boyle", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.606565Z", + "index": 2009043001, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 6, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/24/episode-5-vampires/", + "post_title": "6. Vampires!", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.598563Z", + "index": 2009042401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 5, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/23/episode-4-joaquin-phoenix/", + "post_title": "5. Joaquin Phoenix", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.590565Z", + "index": 2009042301, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 4, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/19/extra-podcast-quick-hello/", + "post_title": "4. Extra Podcast \u2013 Quick Hello", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.583573Z", + "index": 2009041901, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 3, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/15/episode-3-musicthe-beatles/", + "post_title": "3. Music/The Beatles", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.575575Z", + "index": 2009041501, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + }, + { + "episode": 2, + "date": "2000-01-01T00:00:00+00:00", + "url": "https://teacherluke.co.uk/2009/04/14/episode-2-easter/", + "post_title": "2. Easter / Interview with my Dad / Language Focus: Adverbials", + "post_type": "", + "audios": null, + "parsing_utc": "2021-10-14T07:35:24.567577Z", + "index": 2009041401, + "admin_note": "[ERROR]: Unhandled error | No mock address: GET ht" + } +] diff --git a/tests/test_parser.py b/tests/test_parser.py index 5fd179a..d746aad 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,7 +1,7 @@ """Test cases for the parser module.""" import json -import typing as t import tempfile +import typing as t from datetime import datetime from pathlib import Path @@ -14,8 +14,8 @@ from requests_mock.response import _Context as rm_Context from lep_downloader import config as conf -from lep_downloader import parser from lep_downloader import lep +from lep_downloader import parser from lep_downloader.lep import LepEpisode