diff --git a/gui/slick/views/manage_massEdit.mako b/gui/slick/views/manage_massEdit.mako
index 29d2433926b4ca9e281f271d432ba632c937a553..92e880327a4d26c9e90617c40710a8fb7ecffd0a 100644
--- a/gui/slick/views/manage_massEdit.mako
+++ b/gui/slick/views/manage_massEdit.mako
@@ -135,8 +135,8 @@
                                 <span class="component-desc">
                                     <select id="edit_archive_firstmatch" name="archive_firstmatch" class="form-control form-control-inline input-sm">
                                         <option value="keep" ${('', 'selected="selected"')[archive_firstmatch_value is None]}>&lt; Keep &gt;</option>
-                                        <option value="enable" ${('', 'selected="selected"')[archive_firstmatch_value is 1]}>Yes</option>
-                                        <option value="disable" ${('', 'selected="selected"')[archive_firstmatch_value is 0]}>No</option>
+                                        <option value="enable" ${('', 'selected="selected"')[archive_firstmatch_value == 1]}>Yes</option>
+                                        <option value="disable" ${('', 'selected="selected"')[archive_firstmatch_value == 0]}>No</option>
                                     </select><br>
                                     Archive episode after the first best match is found from your archive quality list.
                                 </span>
diff --git a/sickbeard/clients/rtorrent_client.py b/sickbeard/clients/rtorrent_client.py
index 5e21e79b55fd0ed13fa5c5ef0e57056ab0d7200f..4bce5960d2b65f9be4fea1a33c0a018cc6b28286 100644
--- a/sickbeard/clients/rtorrent_client.py
+++ b/sickbeard/clients/rtorrent_client.py
@@ -38,7 +38,7 @@ class rTorrentAPI(GenericClient):
             return
 
         tp_kwargs = {}
-        if sickbeard.TORRENT_AUTH_TYPE is not 'none':
+        if sickbeard.TORRENT_AUTH_TYPE != 'none':
             tp_kwargs['authtype'] = sickbeard.TORRENT_AUTH_TYPE
 
         if not sickbeard.TORRENT_VERIFY_CERT:
diff --git a/sickbeard/databases/mainDB.py b/sickbeard/databases/mainDB.py
index dce4c713eb1f81de6ea6b00ee31f4028e5d55d57..663fd6d1687e0d0139ba417398398191eaafa717 100644
--- a/sickbeard/databases/mainDB.py
+++ b/sickbeard/databases/mainDB.py
@@ -278,7 +278,7 @@ class MainSanityCheck(db.DBSanityCheck):
                        (sqlResult['episode_id'], sqlResult['subtitles']), logger.DEBUG)
 
             for subcode in sqlResult['subtitles'].split(','):
-                if not len(subcode) is 3 or subcode not in subtitles.subtitle_code_filter():
+                if not len(subcode) == 3 or subcode not in subtitles.subtitle_code_filter():
                     logger.log(u"Fixing subtitle codes for episode_id: %s, invalid code: %s" %
                                (sqlResult['episode_id'], subcode), logger.DEBUG)
                     continue
diff --git a/sickbeard/notifiers/pushbullet.py b/sickbeard/notifiers/pushbullet.py
index 745fcb31a315ff971cab54476c0c4c4c35a51c26..0e633b81eacbcce37ae3c80cb32b5b5c2ed380dc 100644
--- a/sickbeard/notifiers/pushbullet.py
+++ b/sickbeard/notifiers/pushbullet.py
@@ -65,7 +65,7 @@ class PushbulletNotifier(object):
 
     def _sendPushbullet(self, pushbullet_api=None, pushbullet_device=None, event=None, message=None):
 
-        if not (sickbeard.USE_PUSHBULLET or event is 'Test' or event is None):
+        if not (sickbeard.USE_PUSHBULLET or event == 'Test' or event is None):
             return False
 
         pushbullet_api = pushbullet_api or sickbeard.PUSHBULLET_API
diff --git a/sickbeard/postProcessor.py b/sickbeard/postProcessor.py
index 2d45fc2188e1bd768de517e49f4191555d19ef59..b440afbf9c11d603a59cf03a34699f4f080b8b57 100644
--- a/sickbeard/postProcessor.py
+++ b/sickbeard/postProcessor.py
@@ -210,9 +210,9 @@ class PostProcessor(object):
 
                 if is_subtitle and sub_file_name.lower() == base_name.lower().replace('[[]', '[').replace('[]]', ']'):
                     language_extensions = tuple('.' + c for c in language_converters['opensubtitles'].codes)
-                    if file_name.lower().endswith(language_extensions) and (len(filefound.rsplit('.', 2)[1]) is 2 or 3):
+                    if file_name.lower().endswith(language_extensions) and (len(filefound.rsplit('.', 2)[1]) in [2, 3]):
                         filelist.append(filefound)
-                    elif file_name.lower().endswith('pt-br') and len(filefound.rsplit('.', 2)[1]) is 5:
+                    elif file_name.lower().endswith('pt-br') and len(filefound.rsplit('.', 2)[1]) == 5:
                         filelist.append(filefound)
                 elif new_file_name.lower() == base_name.lower().replace('[[]', '[').replace('[]]', ']'): # if there's no difference in the filename add it to the filelist
                     filelist.append(filefound)
diff --git a/sickbeard/providers/bitcannon.py b/sickbeard/providers/bitcannon.py
index a4984066b41f8d7ca6c50837c1bbe0592583b97c..876f258a6bbd1d7032dfaf44dd3379843463017a 100644
--- a/sickbeard/providers/bitcannon.py
+++ b/sickbeard/providers/bitcannon.py
@@ -65,8 +65,8 @@ class BitCannonProvider(generic.TorrentProvider):
             logger.log(u"Search Mode: %s" % mode, logger.DEBUG)
             for search_string in search_strings[mode]:
 
-                self.search_params['q'] = search_string.encode('utf-8') if mode is not 'RSS' else ''
-                if mode is not 'RSS':
+                self.search_params['q'] = search_string.encode('utf-8') if mode != 'RSS' else ''
+                if mode != 'RSS':
                     logger.log(u"Search string: %s" % search_string, logger.DEBUG)
 
                 try:
@@ -104,12 +104,12 @@ class BitCannonProvider(generic.TorrentProvider):
                                 continue
 
                             if seeders < self.minseed or leechers < self.minleech:
-                                if mode is not 'RSS':
+                                if mode != 'RSS':
                                     logger.log(u"Discarding torrent because it doesn't meet the minimum seeders or leechers: {0} (S:{1} L:{2})".format(title, seeders, leechers), logger.DEBUG)
                                 continue
 
                             item = title, download_url, size, seeders, leechers
-                            if mode is not 'RSS':
+                            if mode != 'RSS':
                                 logger.log(u"Found result: %s " % title, logger.DEBUG)
 
                             items[mode].append(item)
diff --git a/sickbeard/providers/extratorrent.py b/sickbeard/providers/extratorrent.py
index e760fbbb4526351cf5867a08b72b867c0f1ec864..f3b632e1ab060991d9a39ddef2e62d353d477a5a 100644
--- a/sickbeard/providers/extratorrent.py
+++ b/sickbeard/providers/extratorrent.py
@@ -61,7 +61,7 @@ class ExtraTorrentProvider(generic.TorrentProvider):
                     logger.log(u"Search string: %s " % search_string, logger.DEBUG)
 
                 try:
-                    self.search_params.update({'type': ('search', 'rss')[mode is 'RSS'], 'search': search_string})
+                    self.search_params.update({'type': ('search', 'rss')[mode == 'RSS'], 'search': search_string})
                     data = self.getURL(self.urls['rss'], params=self.search_params)
                     if not data:
                         logger.log(u"No data returned from provider", logger.DEBUG)
diff --git a/sickbeard/providers/freshontv.py b/sickbeard/providers/freshontv.py
index c875e022d2fd4e7c8ee2ae2dffb60e69108e65e8..2fb6858c85062f7b9e3f2bb13d06801febb6097b 100644
--- a/sickbeard/providers/freshontv.py
+++ b/sickbeard/providers/freshontv.py
@@ -150,7 +150,7 @@ class FreshOnTVProvider(generic.TorrentProvider):
                         if max_page_number > 15:
                             max_page_number = 15
                         # limit RSS search
-                        if max_page_number > 3 and mode is 'RSS':
+                        if max_page_number > 3 and mode == 'RSS':
                             max_page_number = 3
                 except Exception:
                     logger.log(u"Failed parsing provider. Traceback: %s" % traceback.format_exc(), logger.ERROR)
diff --git a/sickbeard/providers/rarbg.py b/sickbeard/providers/rarbg.py
index 6227b7362bd1b85f29d298bf757870a81e7819fd..30e6a470050c6fa29f7dd372b229a5c44ef1919a 100644
--- a/sickbeard/providers/rarbg.py
+++ b/sickbeard/providers/rarbg.py
@@ -121,7 +121,7 @@ class RarbgProvider(generic.TorrentProvider):
                 if mode != 'RSS':
                     logger.log(u"Search string: %s " % search_string, logger.DEBUG)
 
-                if mode is 'RSS':
+                if mode == 'RSS':
                     searchURL = self.urls['listing'] + self.defaultOptions
                 elif mode == 'Season':
                     if ep_indexer == INDEXER_TVDB:
@@ -142,7 +142,7 @@ class RarbgProvider(generic.TorrentProvider):
                 if self.minseed:
                     searchURL += self.urlOptions['seeders'].format(min_seeders=int(self.minseed))
 
-                searchURL += self.urlOptions['sorting'].format(sorting=(self.sorting if self.sorting else 'seeders', 'last')[mode is 'RSS'])
+                searchURL += self.urlOptions['sorting'].format(sorting=(self.sorting if self.sorting else 'seeders', 'last')[mode == 'RSS'])
 
                 if self.ranked:
                     searchURL += self.urlOptions['ranked'].format(ranked=int(self.ranked))
diff --git a/sickbeard/providers/t411.py b/sickbeard/providers/t411.py
index 9c45f29275d416126c784025c527b4ce3307c7de..f35f6c13929518ea539ebccf482faf8c771c4da6 100644
--- a/sickbeard/providers/t411.py
+++ b/sickbeard/providers/t411.py
@@ -92,7 +92,7 @@ class T411Provider(generic.TorrentProvider):
                 if mode != 'RSS':
                     logger.log(u"Search string: %s " % search_string, logger.DEBUG)
 
-                searchURLS = ([self.urls['search'] % (search_string, u) for u in self.subcategories], [self.urls['rss']])[mode is 'RSS']
+                searchURLS = ([self.urls['search'] % (search_string, u) for u in self.subcategories], [self.urls['rss']])[mode == 'RSS']
                 for searchURL in searchURLS:
                     logger.log(u"Search URL: %s" %  searchURL, logger.DEBUG)
                     data = self.getURL(searchURL, json=True)
@@ -111,7 +111,7 @@ class T411Provider(generic.TorrentProvider):
                             continue
 
                         for torrent in torrents:
-                            if mode is 'RSS' and int(torrent['category']) not in self.subcategories:
+                            if mode == 'RSS' and int(torrent['category']) not in self.subcategories:
                                 continue
 
                             try:
diff --git a/sickbeard/providers/thepiratebay.py b/sickbeard/providers/thepiratebay.py
index c0cdcf9fb3640ee68b341ea3bc6cd643a3a04690..9315ff4c0cd3c11d9e477f6a2ed2f6cd192c7dc4 100644
--- a/sickbeard/providers/thepiratebay.py
+++ b/sickbeard/providers/thepiratebay.py
@@ -79,7 +79,7 @@ class ThePirateBayProvider(generic.TorrentProvider):
                 if mode != 'RSS':
                     logger.log(u"Search string: " + search_string, logger.DEBUG)
 
-                searchURL = self.urls[('search', 'rss')[mode is 'RSS']] + '?' + urlencode(self.search_params)
+                searchURL = self.urls[('search', 'rss')[mode == 'RSS']] + '?' + urlencode(self.search_params)
                 if self.custom_url:
                     searchURL = posixpath.join(self.custom_url, searchURL.split(self.url)[1].lstrip('/')) # Must use posixpath
 
diff --git a/sickbeard/providers/tntvillage.py b/sickbeard/providers/tntvillage.py
index 047aa36ac09f14748c06d92469e73df6c751d711..0b7e2cc00876392dbb68b1c869a81510bca2dc72 100644
--- a/sickbeard/providers/tntvillage.py
+++ b/sickbeard/providers/tntvillage.py
@@ -217,7 +217,7 @@ class TNTVillageProvider(generic.TorrentProvider):
     def _is_italian(self, torrent_rows):
 
         name = str(torrent_rows.find_all('td')[1].find('b').find('span'))
-        if not name or name is 'None':
+        if not name or name == 'None':
             return False
 
         subFound = italian = False
@@ -241,7 +241,7 @@ class TNTVillageProvider(generic.TorrentProvider):
     def _is_english(self, torrent_rows):
 
         name = str(torrent_rows.find_all('td')[1].find('b').find('span'))
-        if not name or name is 'None':
+        if not name or name == 'None':
             return False
 
         english = False
@@ -283,7 +283,7 @@ class TNTVillageProvider(generic.TorrentProvider):
             logger.log(u"Search Mode: %s" % mode, logger.DEBUG)
             for search_string in search_params[mode]:
 
-                if mode is 'RSS':
+                if mode == 'RSS':
                     self.page = 2
 
                 last_page = 0
diff --git a/sickbeard/providers/torrentday.py b/sickbeard/providers/torrentday.py
index ea1b67e6b56555a623241814a89551c369867f9e..f73d650120e1dcaf61f9b5f28a6b6d9ba423941a 100644
--- a/sickbeard/providers/torrentday.py
+++ b/sickbeard/providers/torrentday.py
@@ -40,10 +40,12 @@ class TorrentDayProvider(generic.TorrentProvider):
 
         self.cache = TorrentDayCache(self)
 
-        self.urls = {'base_url': 'https://classic.torrentday.com',
-                     'login': 'https://classic.torrentday.com/torrents/',
-                     'search': 'https://classic.torrentday.com/V3/API/API.php',
-                     'download': 'https://classic.torrentday.com/download.php/%s/%s'}
+        self.urls = {
+            'base_url': 'https://classic.torrentday.com',
+             'login': 'https://classic.torrentday.com/torrents/',
+             'search': 'https://classic.torrentday.com/V3/API/API.php',
+             'download': 'https://classic.torrentday.com/download.php/%s/%s'
+        }
 
         self.url = self.urls['base_url']
 
@@ -61,10 +63,12 @@ class TorrentDayProvider(generic.TorrentProvider):
             requests.utils.add_dict_to_cookiejar(self.session.cookies, self.cookies)
         else:
 
-            login_params = {'username': self.username,
-                            'password': self.password,
-                            'submit.x': 0,
-                            'submit.y': 0}
+            login_params = {
+                'username': self.username,
+                'password': self.password,
+                'submit.x': 0,
+                'submit.y': 0
+            }
 
             response = self.getURL(self.urls['login'], post_data=login_params, timeout=30)
             if not response:
diff --git a/sickbeard/providers/torrentleech.py b/sickbeard/providers/torrentleech.py
index a969138c694c4e66fbe65446a21db0be6db1a91f..27f5b76e96a9dc4cf1b7eb66d6f3395430503c68 100644
--- a/sickbeard/providers/torrentleech.py
+++ b/sickbeard/providers/torrentleech.py
@@ -84,7 +84,7 @@ class TorrentLeechProvider(generic.TorrentProvider):
             logger.log(u"Search Mode: %s" % mode, logger.DEBUG)
             for search_string in search_params[mode]:
 
-                if mode is 'RSS':
+                if mode == 'RSS':
                     searchURL = self.urls['index'] % self.categories
                 else:
                     searchURL = self.urls['search'] % (urllib.quote_plus(search_string.encode('utf-8')), self.categories)
diff --git a/sickbeard/providers/torrentproject.py b/sickbeard/providers/torrentproject.py
index b7df83d7e62b533561d7f71044ba2e62584b50d1..c2d72efa32afac96963dfc13b8f18312fc521b70 100644
--- a/sickbeard/providers/torrentproject.py
+++ b/sickbeard/providers/torrentproject.py
@@ -79,7 +79,7 @@ class TORRENTPROJECTProvider(generic.TorrentProvider):
                         logger.log(u"Torrent has less than 10 seeds getting dyn trackers: " + title, logger.DEBUG)
                         trackerUrl = self.urls['api'] + "" + t_hash + "/trackers_json"
                         jdata = self.getURL(trackerUrl, json=True)
-                        assert jdata is not "maintenance"
+                        assert jdata != "maintenance"
                         download_url = "magnet:?xt=urn:btih:" + t_hash + "&dn=" + title + "".join(["&tr=" + s for s in jdata])
                     except (Exception, AssertionError):
                         download_url = "magnet:?xt=urn:btih:" + t_hash + "&dn=" + title + self._custom_trackers
diff --git a/sickbeard/versionChecker.py b/sickbeard/versionChecker.py
index 1a9d96168aeb5d165e95b1561a4a1a40eb4e0acd..3679a7f91115eb6e36360e8908df5460d7c7710a 100644
--- a/sickbeard/versionChecker.py
+++ b/sickbeard/versionChecker.py
@@ -208,7 +208,7 @@ class CheckVersion(object):
         try:
             self.updater.need_update()
             cur_hash = str(self.updater.get_newest_commit_hash())
-            assert len(cur_hash) is 40, "Commit hash wrong length: %s hash: %s" % (len(cur_hash), cur_hash)
+            assert len(cur_hash) == 40, "Commit hash wrong length: %s hash: %s" % (len(cur_hash), cur_hash)
 
             check_url = "http://cdn.rawgit.com/%s/%s/%s/sickbeard/databases/mainDB.py" % (sickbeard.GIT_ORG, sickbeard.GIT_REPO, cur_hash)
             response = helpers.getURL(check_url, session=self.session)
diff --git a/sickbeard/webserve.py b/sickbeard/webserve.py
index 39ddd85f1e7dc189075384c71a4deed5ba1a9277..9d62ff641f31eec1d614394b5ef81ddd30711c40 100644
--- a/sickbeard/webserve.py
+++ b/sickbeard/webserve.py
@@ -2602,9 +2602,9 @@ class HomeAddShows(Home):
 
     def addShowByID(self, indexer_id, showName, indexer="TVDB"):
 
-        if indexer is not "TVDB":
+        if indexer != "TVDB":
             tvdb_id = helpers.getTVDBFromID(indexer_id, indexer.upper())
-            if tvdb_id is not '':
+            if tvdb_id != '':
                 indexer_id = tvdb_id
 
         if Show.find(sickbeard.showList, int(indexer_id)):