diff --git a/gui/slick/views/config_notifications.mako b/gui/slick/views/config_notifications.mako
index e49efd49f2ede01d58fe12429980f02719034957..69f41f94d3ea1f41285f0afa1ca61469978525ea 100644
--- a/gui/slick/views/config_notifications.mako
+++ b/gui/slick/views/config_notifications.mako
@@ -409,7 +409,7 @@
                             <div class="field-pair">
                                 <label for="nmj_database">
                                     <span class="component-title">NMJ database</span>
-                                    <input type="text" name="nmj_database" id="nmj_database" value="${sickbeard.NMJ_DATABASE}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJ_DATABASE == True]}/>
+                                    <input type="text" name="nmj_database" id="nmj_database" value="${sickbeard.NMJ_DATABASE}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJ_DATABASE is True]}/>
                                 </label>
                                 <label>
                                     <span class="component-title">&nbsp;</span>
@@ -419,7 +419,7 @@
                             <div class="field-pair">
                                 <label for="nmj_mount">
                                     <span class="component-title">NMJ mount url</span>
-                                    <input type="text" name="nmj_mount" id="nmj_mount" value="${sickbeard.NMJ_MOUNT}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJ_MOUNT == True]}/>
+                                    <input type="text" name="nmj_mount" id="nmj_mount" value="${sickbeard.NMJ_MOUNT}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJ_MOUNT is True]}/>
                                 </label>
                                 <label>
                                     <span class="component-title">&nbsp;</span>
@@ -506,7 +506,7 @@
                             <div class="field-pair">
                                 <label for="nmjv2_database">
                                     <span class="component-title">NMJv2 database</span>
-                                    <input type="text" name="nmjv2_database" id="nmjv2_database" value="${sickbeard.NMJv2_DATABASE}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJv2_DATABASE == True]}/>
+                                    <input type="text" name="nmjv2_database" id="nmjv2_database" value="${sickbeard.NMJv2_DATABASE}" class="form-control input-sm input250" ${(' readonly="readonly"', '')[sickbeard.NMJv2_DATABASE is True]}/>
                                 </label>
                                 <label>
                                     <span class="component-title">&nbsp;</span>
diff --git a/gui/slick/views/config_providers.mako b/gui/slick/views/config_providers.mako
index 9585ef0ab7ba865e29c61aa638ce5b1a91d2cc86..45d91fe3aa20435e354705587304c11d90150598 100644
--- a/gui/slick/views/config_providers.mako
+++ b/gui/slick/views/config_providers.mako
@@ -78,7 +78,7 @@ $('#config-components').tabs();
                                 curName = curProvider.getID()
                             %>
                             <li class="ui-state-default ${('nzb-provider', 'torrent-provider')[bool(curProvider.providerType == "torrent")]}" id="${curName}">
-                                <input type="checkbox" id="enable_${curName}" class="provider_enabler" ${('', 'checked="checked"')[curProvider.isEnabled() == True]}/>
+                                <input type="checkbox" id="enable_${curName}" class="provider_enabler" ${('', 'checked="checked"')[curProvider.isEnabled() is True]}/>
                                 <a href="${anon_url(curProvider.url)}" class="imgLink" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;"><img src="${srRoot}/images/providers/${curProvider.imageName()}" alt="${curProvider.name}" title="${curProvider.name}" width="16" height="16" style="vertical-align:middle;"/></a>
                                 <span style="vertical-align:middle;">${curProvider.name}</span>
                                 ${('*', '')[bool(curProvider.supportsBacklog)]}
diff --git a/gui/slick/views/config_search.mako b/gui/slick/views/config_search.mako
index 8beab44b50b58c03bfb4e521465188ef95c2a202..61e3054dfd68e15001d3933a3efe8f28235f4c52 100644
--- a/gui/slick/views/config_search.mako
+++ b/gui/slick/views/config_search.mako
@@ -318,7 +318,7 @@
                                 </label>
                             </div>
 
-                            % if sickbeard.ALLOW_HIGH_PRIORITY == True:
+                            % if sickbeard.ALLOW_HIGH_PRIORITY is True:
                             <div class="field-pair">
                                 <label for="sab_forced">
                                     <span class="component-title">Use forced priority</span>
diff --git a/gui/slick/views/config_subtitles.mako b/gui/slick/views/config_subtitles.mako
index d18355fa469062f1e0019b15f844db836b41fcf0..3ac9a04d0896cc96cb02db269dd40aacb915b6f9 100644
--- a/gui/slick/views/config_subtitles.mako
+++ b/gui/slick/views/config_subtitles.mako
@@ -162,7 +162,7 @@ $('#subtitles_dir').fileBrowser({ title: 'Select Subtitles Download Directory' }
                         <ul id="service_order_list">
                         % for curService in sickbeard.subtitles.sortedServiceList():
                             <li class="ui-state-default" id="${curService['name']}">
-                                <input type="checkbox" id="enable_${curService['name']}" class="service_enabler" ${('', 'checked="checked"')[curService['enabled'] == True]}/>
+                                <input type="checkbox" id="enable_${curService['name']}" class="service_enabler" ${('', 'checked="checked"')[curService['enabled'] is True]}/>
                                 <a href="${anon_url(curService['url'])}" class="imgLink" target="_new">
                                     <img src="${srRoot}/images/subtitles/${curService['image']}" alt="${curService['url']}" title="${curService['url']}" width="16" height="16" style="vertical-align:middle;"/>
                                 </a>
diff --git a/gui/slick/views/displayShow.mako b/gui/slick/views/displayShow.mako
index b8da99c0f5e6a59ac9ade423dcac79608dac2e51..23fd582196121cf9e83f8f05437af381a446130d 100644
--- a/gui/slick/views/displayShow.mako
+++ b/gui/slick/views/displayShow.mako
@@ -334,7 +334,7 @@
         <tr style="height: 60px;">
             <th class="row-seasonheader displayShowTable" colspan="13" style="vertical-align: bottom; width: auto;">
                 <h3 style="display: inline;"><a name="season-${epResult["season"]}"></a>${("Specials", "Season " + str(epResult["season"]))[int(epResult["season"]) > 0]}</h3>
-                % if sickbeard.DISPLAY_ALL_SEASONS == False:
+                % if sickbeard.DISPLAY_ALL_SEASONS is False:
                     <button id="showseason-${epResult['season']}" type="button" class="btn btn-xs pull-right" data-toggle="collapse" data-target="#collapseSeason-${epResult['season']}">Show Episodes</button>
                     <script type="text/javascript">
                         $(function() {
@@ -374,7 +374,7 @@
         <tr style="height: 60px;">
             <th class="row-seasonheader displayShowTable" colspan="13" style="vertical-align: bottom; width: auto;">
                 <h3 style="display: inline;"><a name="season-${epResult["season"]}"></a>${("Specials", "Season " + str(epResult["season"]))[bool(int(epResult["season"]))]}</h3>
-                % if sickbeard.DISPLAY_ALL_SEASONS == False:
+                % if sickbeard.DISPLAY_ALL_SEASONS is False:
                     <button id="showseason-${epResult['season']}" type="button" class="btn btn-xs pull-right" data-toggle="collapse" data-target="#collapseSeason-${epResult['season']}">Show Episodes</button>
                     <script type="text/javascript">
                         $(function() {
@@ -410,7 +410,7 @@
         </tr>
             % endif
     </tbody>
-        % if sickbeard.DISPLAY_ALL_SEASONS == False:
+        % if sickbeard.DISPLAY_ALL_SEASONS is False:
         <tbody class="collapse${("", " in")[curSeason == -1]}" id="collapseSeason-${epResult['season']}">
         % else:
         <tbody>
@@ -428,7 +428,7 @@
             <td align="center">
             <%
                 text = str(epResult['episode'])
-                if epLoc != '' and epLoc != None:
+                if epLoc != '' and epLoc is not None:
                     text = '<span title="' + epLoc + '" class="addQTip">' + text + "</span>"
             %>
                 ${text}
@@ -459,7 +459,7 @@
                         style="padding: 0; text-align: center; max-width: 60px;" />
             </td>
             <td class="col-name">
-            % if epResult["description"] != "" and epResult["description"] != None:
+            % if epResult["description"] != "" and epResult["description"] is not None:
                 <img src="${srRoot}/images/info32.png" width="16" height="16" class="plotInfo" alt="" id="plot_info_${str(show.indexerid)}_${str(epResult["season"])}_${str(epResult["episode"])}" />
             % else:
                 <img src="${srRoot}/images/info32.png" width="16" height="16" class="plotInfoNone" alt="" />
diff --git a/gui/slick/views/editShow.mako b/gui/slick/views/editShow.mako
index b1901f664591d2fde71c109595223dd1e0fd51cd..299168570c6e184e613eb6e108dfe120d375dc2f 100644
--- a/gui/slick/views/editShow.mako
+++ b/gui/slick/views/editShow.mako
@@ -106,7 +106,7 @@
                             <label for="subtitles">
                                 <span class="component-title">Subtitles</span>
                                 <span class="component-desc">
-                                    <input type="checkbox" id="subtitles" name="subtitles" ${('', 'checked="checked"')[show.subtitles == 1 and sickbeard.USE_SUBTITLES == True]} ${('disabled="disabled"', '')[bool(sickbeard.USE_SUBTITLES)]}/> search for subtitles
+                                    <input type="checkbox" id="subtitles" name="subtitles" ${('', 'checked="checked"')[show.subtitles == 1 and sickbeard.USE_SUBTITLES is True]} ${('disabled="disabled"', '')[bool(sickbeard.USE_SUBTITLES)]}/> search for subtitles
                                 </span>
                             </label>
                         </div>
diff --git a/gui/slick/views/history.mako b/gui/slick/views/history.mako
index 8f9de80b3a77af59b13c1a3c22e72b6a34d08403..8895b5b044e84ddc132f883bc49daa0c6fe38929 100644
--- a/gui/slick/views/history.mako
+++ b/gui/slick/views/history.mako
@@ -87,7 +87,7 @@
                     % if hItem["provider"] > 0:
                         % if curStatus in [SNATCHED, FAILED]:
                             <% provider = providers.getProviderClass(generic.GenericProvider.makeID(hItem["provider"])) %>
-                            % if provider != None:
+                            % if provider is not None:
                                 <img src="${srRoot}/images/providers/${provider.imageName()}" width="16" height="16" style="vertical-align:middle;" /> <span style="vertical-align:middle;">${provider.name}</span>
                             % else:
                                 <img src="${srRoot}/images/providers/missing.png" width="16" height="16" style="vertical-align:middle;" title="missing provider"/> <span style="vertical-align:middle;">Missing Provider</span>
@@ -142,7 +142,7 @@
                         <% curStatus, curQuality = Quality.splitCompositeStatus(int(action["action"])) %>
                         % if curStatus in [SNATCHED, FAILED]:
                             <% provider = providers.getProviderClass(generic.GenericProvider.makeID(action["provider"])) %>
-                            % if provider != None:
+                            % if provider is not None:
                                 <img src="${srRoot}/images/providers/${provider.imageName()}" width="16" height="16" style="vertical-align:middle;" alt="${provider.name}" style="cursor: help;" title="${provider.name}: ${os.path.basename(action["resource"])}"/>
                             % else:
                                 <img src="${srRoot}/images/providers/missing.png" width="16" height="16" style="vertical-align:middle;" alt="missing provider" title="missing provider"/>
diff --git a/gui/slick/views/home.mako b/gui/slick/views/home.mako
index cf048477e967e2936b383f92d7ad1c788939f3d3..431137155ad592f82290d61f807952451c1ea06e 100644
--- a/gui/slick/views/home.mako
+++ b/gui/slick/views/home.mako
@@ -72,7 +72,7 @@
 <div id="${('container', 'container-anime')[curListType == 'Anime' and sickbeard.HOME_LAYOUT == 'poster']}" class="clearfix">
 <div class="posterview">
 % for curLoadingShow in sickbeard.showQueueScheduler.action.loadingShowList:
-    % if curLoadingShow.show == None:
+    % if curLoadingShow.show is None:
         <div class="show-container" data-name="0" data-date="010101" data-network="0" data-progress="101">
             <img alt="" title="${curLoadingShow.show_name}" class="show-image" style="border-bottom: 1px solid #111;" src="${srRoot}/images/poster.png" />
             <div class="show-details">
@@ -249,14 +249,14 @@
     <tbody class="tablesorter-infoOnly">
 % for curLoadingShow in sickbeard.showQueueScheduler.action.loadingShowList:
 
-    % if curLoadingShow.show != None and curLoadingShow.show in sickbeard.showList:
+    % if curLoadingShow.show is not None and curLoadingShow.show in sickbeard.showList:
          <% continue %>
     % endif
   <tr>
     <td align="center">(loading)</td>
     <td></td>
     <td>
-    % if curLoadingShow.show == None:
+    % if curLoadingShow.show is None:
     <span title="">Loading... (${curLoadingShow.show_name})</span>
     % else:
     <a href="displayShow?show=${curLoadingShow.show.indexerid}">${curLoadingShow.show.name}</a>
diff --git a/gui/slick/views/home_addShows.mako b/gui/slick/views/home_addShows.mako
index 16da9f75c1dac61cf22c99dbb32ae7c387ede771..a42f588421e63b2d443f5d2360babae47b8f3141 100644
--- a/gui/slick/views/home_addShows.mako
+++ b/gui/slick/views/home_addShows.mako
@@ -21,7 +21,7 @@
     </a>
 
     <br><br>
-    % if sickbeard.USE_TRAKT == True:
+    % if sickbeard.USE_TRAKT is True:
     <a href="${srRoot}/home/addShows/trendingShows/" id="btnNewShow" class="btn btn-large">
         <div class="button"><div class="icon-addtrendingshow"></div></div>
         <div class="buttontext">
diff --git a/gui/slick/views/inc_defs.mako b/gui/slick/views/inc_defs.mako
index eaa54116836d691c2ff9eecc16cf25c501a2f502..f8ff29646e906f4cc13b9d163d4f77cec5711fe6 100644
--- a/gui/slick/views/inc_defs.mako
+++ b/gui/slick/views/inc_defs.mako
@@ -42,7 +42,7 @@
         cssClass = "Custom"
         qualityString = "Custom"
 
-    if overrideClass == None:
+    if overrideClass is None:
         cssClass = "quality " + cssClass
     else:
         cssClass = overrideClass
diff --git a/gui/slick/views/layouts/main.mako b/gui/slick/views/layouts/main.mako
index 10e5c24fd70ef57636f3e748249078c8e6664059..19fcb9965b463ad3cd2721cec972f892edd7e1da 100644
--- a/gui/slick/views/layouts/main.mako
+++ b/gui/slick/views/layouts/main.mako
@@ -220,7 +220,7 @@
                                 <li><a href="${srRoot}/home/updateCheck?pid=${sbPID}"><i class="menu-icon-update"></i>&nbsp;Check For Updates</a></li>
                                 <li><a href="${srRoot}/home/restart/?pid=${sbPID}" class="confirm restart"><i class="menu-icon-restart"></i>&nbsp;Restart</a></li>
                                 <li><a href="${srRoot}/home/shutdown/?pid=${sbPID}" class="confirm shutdown"><i class="menu-icon-shutdown"></i>&nbsp;Shutdown</a></li>
-                                % if srLogin != True:
+                                % if srLogin is not True:
                                     <li><a href="${srRoot}/logout" class="confirm logout"><i class="menu-icon-shutdown"></i>&nbsp;Logout</a></li>
                                 % endif
                                 <li role="separator" class="divider"></li>
diff --git a/gui/slick/views/manage_failedDownloads.mako b/gui/slick/views/manage_failedDownloads.mako
index bac45ec04062b86ec34972a6f6ae6754fe47775e..920e04f8a3054b4f2b94905664d58b7079af0821 100644
--- a/gui/slick/views/manage_failedDownloads.mako
+++ b/gui/slick/views/manage_failedDownloads.mako
@@ -54,7 +54,7 @@
     </td>
     <td align="center">
     <% provider = providers.getProviderClass(generic.GenericProvider.makeID(hItem["provider"])) %>
-    % if provider != None:
+    % if provider is not None:
         <img src="${srRoot}/images/providers/${provider.imageName()}" width="16" height="16" alt="${provider.name}" title="${provider.name}"/>
     % else:
         <img src="${srRoot}/images/providers/missing.png" width="16" height="16" alt="missing provider" title="missing provider"/>
diff --git a/gui/slick/views/manage_massEdit.mako b/gui/slick/views/manage_massEdit.mako
index 7d44bb7c46aeb6a570269ba9256007ffd17a8a80..0892016a97e75f1e78b853719456eb3d2fefc9cf 100644
--- a/gui/slick/views/manage_massEdit.mako
+++ b/gui/slick/views/manage_massEdit.mako
@@ -9,7 +9,7 @@
 
 <%block name="scripts">
 <%
-    if quality_value != None:
+    if quality_value is not None:
         initial_quality = int(quality_value)
     else:
         initial_quality = common.SD
@@ -90,7 +90,7 @@
                                 <span class="component-title">Preferred Quality</span>
                                 <span class="component-desc">
                                     <%
-                                        if quality_value != None:
+                                        if quality_value is not None:
                                             initial_quality = int(quality_value)
                                         else:
                                             initial_quality = common.SD
@@ -101,7 +101,7 @@
                                     <select id="qualityPreset" name="quality_preset" class="form-control form-control-inline input-sm">
                                         <option value="keep">&lt; Keep &gt;</option>
                                         <% selected = None %>
-                                        <option value="0" ${('', 'selected="selected"')[quality_value != None and quality_value not in common.qualityPresets]}>Custom</option>
+                                        <option value="0" ${('', 'selected="selected"')[quality_value is not None and quality_value not in common.qualityPresets]}>Custom</option>
                                         % for curPreset in sorted(common.qualityPresets):
                                         <option value="${curPreset}" ${('', 'selected="selected"')[quality_value == curPreset]}>${common.qualityPresetStrings[curPreset]}</option>
                                         % endfor
@@ -137,9 +137,9 @@
                                 <span class="component-title">Archive on first match</span>
                                 <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 == None]}>&lt; Keep &gt;</option>
-                                        <option value="enable" ${('', 'selected="selected"')[archive_firstmatch_value == 1]}>Yes</option>
-                                        <option value="disable" ${('', 'selected="selected"')[archive_firstmatch_value == 0]}>No</option>
+                                        <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>
                                     </select><br>
                                     Archive episode after the first best match is found from your archive quality list.
                                 </span>
@@ -151,7 +151,7 @@
                                 <span class="component-title">Season folders (<span class="separator">*</span>)</span>
                                 <span class="component-desc">
                                     <select id="" name="flatten_folders" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[flatten_folders_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[flatten_folders_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[flatten_folders_value == 0]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[flatten_folders_value == 1]}>No</option>
                                     </select><br>
@@ -165,7 +165,7 @@
                                 <span class="component-title">Paused</span>
                                 <span class="component-desc">
                                     <select id="edit_paused" name="paused" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[paused_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[paused_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[paused_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[paused_value == 0]}>No</option>
                                     </select><br/ >
@@ -194,7 +194,7 @@
                                 <span class="component-title">Scene Numbering</span>
                                 <span class="component-desc">
                                     <select id="edit_scene" name="scene" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[scene_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[scene_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[scene_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[scene_value == 0]}>No</option>
                                     </select><br>
@@ -208,7 +208,7 @@
                                 <span class="component-title">Anime</span>
                                 <span class="component-desc">
                                     <select id="edit_anime" name="anime" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[anime_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[anime_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[anime_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[anime_value == 0]}>No</option>
                                     </select><br>
@@ -222,7 +222,7 @@
                                 <span class="component-title">Sports</span>
                                 <span class="component-desc">
                                     <select id="edit_sports" name="sports" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[sports_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[sports_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[sports_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[sports_value == 0]}>No</option>
                                     </select><br>
@@ -237,7 +237,7 @@
                                 <span class="component-title">Air by date</span>
                                 <span class="component-desc">
                                     <select id="edit_air_by_date" name="air_by_date" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[air_by_date_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[air_by_date_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[air_by_date_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[air_by_date_value == 0]}>No</option>
                                     </select><br>
@@ -252,7 +252,7 @@
                                 <span class="component-title">Subtitles</span>
                                 <span class="component-desc">
                                     <select id="edit_subtitles" name="subtitles" class="form-control form-control-inline input-sm">
-                                        <option value="keep" ${('', 'selected="selected"')[subtitles_value == None]}>&lt; Keep &gt;</option>
+                                        <option value="keep" ${('', 'selected="selected"')[subtitles_value is None]}>&lt; Keep &gt;</option>
                                         <option value="enable" ${('', 'selected="selected"')[subtitles_value == 1]}>Yes</option>
                                         <option value="disable" ${('', 'selected="selected"')[subtitles_value == 0]}>No</option>
                                     </select><br>
diff --git a/sickbeard/__init__.py b/sickbeard/__init__.py
index abd3fa33099b42b19ee7006d7c4a5af7d08ca0ad..0ddd3a8a710040211449176321a59bc7fbd19229 100644
--- a/sickbeard/__init__.py
+++ b/sickbeard/__init__.py
@@ -2188,13 +2188,13 @@ def launchBrowser(protocol='http', startPort=None, web_root='/'):
 
 
 def getEpList(epIDs, showid=None):
-    if epIDs == None or len(epIDs) == 0:
+    if epIDs is None or len(epIDs) == 0:
         return []
 
     query = "SELECT * FROM tv_episodes WHERE indexerid in (%s)" % (",".join(['?'] * len(epIDs)),)
     params = epIDs
 
-    if showid != None:
+    if showid is not None:
         query += " AND showid = ?"
         params.append(showid)
 
diff --git a/sickbeard/config.py b/sickbeard/config.py
index 4bc496076ab559335b4dba553cac2b5f6238037d..a8f38d3dd37e68cb64c68558e60cb6b736de7ee0 100644
--- a/sickbeard/config.py
+++ b/sickbeard/config.py
@@ -120,7 +120,7 @@ def change_LOG_DIR(log_dir, web_log):
         else:
             return False
 
-    if sickbeard.WEB_LOG != web_log_value or log_dir_changed == True:
+    if sickbeard.WEB_LOG != web_log_value or log_dir_changed is True:
         sickbeard.WEB_LOG = web_log_value
 
     return True
@@ -282,7 +282,7 @@ def change_VERSION_NOTIFY(version_notify):
     if not version_notify:
         sickbeard.NEWEST_VERSION_STRING = None
 
-    if oldSetting == False and version_notify == True:
+    if oldSetting is False and version_notify is True:
         sickbeard.versionCheckScheduler.forceRun()
 
 def change_DOWNLOAD_PROPERS(download_propers):
diff --git a/sickbeard/db.py b/sickbeard/db.py
index 95d2add4e8e613c46cdcd142bf77493017ffdfc4..92d5e08189b2a6bcfe2717286c783a42941ed56a 100644
--- a/sickbeard/db.py
+++ b/sickbeard/db.py
@@ -183,7 +183,7 @@ class DBConnection(object):
         :param fetchone: Boolean to indicate one result must be fetched (to walk results for instance)
         :return: query results
         """
-        if query == None:
+        if query is None:
             return
 
         sqlResult = None
@@ -192,7 +192,7 @@ class DBConnection(object):
         with db_locks[self.filename]:
             while attempt < 5:
                 try:
-                    if args == None:
+                    if args is None:
                         logger.log(self.filename + ": " + query, logger.DB)
                     else:
                         logger.log(self.filename + ": " + query + " with args " + str(args), logger.DB)
@@ -229,7 +229,7 @@ class DBConnection(object):
 
         sqlResults = self.action(query, args, fetchall=True)
 
-        if sqlResults == None:
+        if sqlResults is None:
             return []
 
         return sqlResults
@@ -244,7 +244,7 @@ class DBConnection(object):
         """
         sqlResults = self.action(query, args, fetchone=True)
 
-        if sqlResults == None:
+        if sqlResults is None:
             return []
 
         return sqlResults
diff --git a/sickbeard/history.py b/sickbeard/history.py
index accf006f380ab2a278bf2c277443a123561717f0..e0a4b1f44f7fc841dc967057f1a8503181a49c8c 100644
--- a/sickbeard/history.py
+++ b/sickbeard/history.py
@@ -62,7 +62,7 @@ def logSnatch(searchResult):
         version = searchResult.version
 
         providerClass = searchResult.provider
-        if providerClass != None:
+        if providerClass is not None:
             provider = providerClass.name
         else:
             provider = "unknown"
diff --git a/sickbeard/image_cache.py b/sickbeard/image_cache.py
index 10c1d2e416d9c50f56a03c43f4ee1a7416fd1ab9..7ab282fee4c344aba20106db3e39662aab38a6fd 100644
--- a/sickbeard/image_cache.py
+++ b/sickbeard/image_cache.py
@@ -289,7 +289,7 @@ class ImageCache:
                         cur_file_name = os.path.abspath(cur_provider.get_poster_path(show_obj))
                         cur_file_type = self.which_type(cur_file_name)
 
-                        if cur_file_type == None:
+                        if cur_file_type is None:
                             logger.log(u"Unable to retrieve image type, not using the image from " + str(cur_file_name),
                                        logger.WARNING)
                             continue
diff --git a/sickbeard/naming.py b/sickbeard/naming.py
index 1e3c0fe62f76a3856769f1f6668275474785360f..9b8db1d06a1492501059e061a365060d259ac407 100644
--- a/sickbeard/naming.py
+++ b/sickbeard/naming.py
@@ -123,15 +123,15 @@ def check_force_season_folders(pattern=None, multi=None, anime_type=None):
 
     :return: true if season folders need to be forced on or false otherwise.
     """
-    if pattern == None:
+    if pattern is None:
         pattern = sickbeard.NAMING_PATTERN
 
-    if anime_type == None:
+    if anime_type is None:
         anime_type = sickbeard.NAMING_ANIME
 
     valid = not validate_name(pattern, None, anime_type, file_only=True)
 
-    if multi != None:
+    if multi is not None:
         valid = valid or not validate_name(pattern, multi, anime_type, file_only=True)
 
     return valid
@@ -143,16 +143,16 @@ def check_valid_naming(pattern=None, multi=None, anime_type=None):
 
     :return: true if the naming is valid, false if not.
     """
-    if pattern == None:
+    if pattern is None:
         pattern = sickbeard.NAMING_PATTERN
 
-    if anime_type == None:
+    if anime_type is None:
         anime_type = sickbeard.NAMING_ANIME
 
     logger.log(u"Checking whether the pattern " + pattern + " is valid for a single episode", logger.DEBUG)
     valid = validate_name(pattern, None, anime_type)
 
-    if multi != None:
+    if multi is not None:
         logger.log(u"Checking whether the pattern " + pattern + " is valid for a multi episode", logger.DEBUG)
         valid = valid and validate_name(pattern, multi, anime_type)
 
@@ -165,7 +165,7 @@ def check_valid_abd_naming(pattern=None):
 
     :return: true if the naming is valid, false if not.
     """
-    if pattern == None:
+    if pattern is None:
         pattern = sickbeard.NAMING_PATTERN
 
     logger.log(u"Checking whether the pattern " + pattern + " is valid for an air-by-date episode", logger.DEBUG)
@@ -180,7 +180,7 @@ def check_valid_sports_naming(pattern=None):
 
     :return: true if the naming is valid, false if not.
     """
-    if pattern == None:
+    if pattern is None:
         pattern = sickbeard.NAMING_PATTERN
 
     logger.log(u"Checking whether the pattern " + pattern + " is valid for an sports episode", logger.DEBUG)
@@ -263,7 +263,7 @@ def generate_sample_ep(multi=None, abd=False, sports=False, anime_type=None):
         else:
             ep._release_name = 'Show.Name.S02E03.HDTV.XviD-RLSGROUP'
 
-    if multi != None:
+    if multi is not None:
         ep._name = "Ep Name (1)"
 
         if anime_type != 3:
diff --git a/sickbeard/notifiers/pushover.py b/sickbeard/notifiers/pushover.py
index f4f102b0bbaa3ef526f2282a815b6a35c0345445..1dc232f16ed34ec2d9172aaa9b695d978070f1c6 100644
--- a/sickbeard/notifiers/pushover.py
+++ b/sickbeard/notifiers/pushover.py
@@ -47,13 +47,13 @@ class PushoverNotifier(object):
         returns: True if the message succeeded, False otherwise
         """
 
-        if userKey == None:
+        if userKey is None:
             userKey = sickbeard.PUSHOVER_USERKEY
 
-        if apiKey == None:
+        if apiKey is None:
             apiKey = sickbeard.PUSHOVER_APIKEY
 
-        if sound == None:
+        if sound is None:
             sound = sickbeard.PUSHOVER_SOUND
 
         logger.log(u"Pushover API KEY in use: " + apiKey, logger.DEBUG)
diff --git a/sickbeard/nzbSplitter.py b/sickbeard/nzbSplitter.py
index 09cb3df81ab386d9a3a29ce469d48acafb91d9e2..311443aa5077f21f403276a03dcd8f446daf44a6 100644
--- a/sickbeard/nzbSplitter.py
+++ b/sickbeard/nzbSplitter.py
@@ -145,7 +145,7 @@ def splitResult(result):
         return False
 
     # bust it up
-    season = parse_result.season_number if parse_result.season_number != None else 1
+    season = parse_result.season_number if parse_result.season_number is not None else 1
 
     separateNZBs, xmlns = getSeasonNZBs(result.name, urlData, season)
 
@@ -167,8 +167,8 @@ def splitResult(result):
             return False
 
         # make sure the result is sane
-        if (parse_result.season_number != None and parse_result.season_number != season) or (
-                parse_result.season_number == None and season != 1):
+        if (parse_result.season_number is not None and parse_result.season_number != season) or (
+                parse_result.season_number is None and season != 1):
             logger.log(
                 u"Found " + newNZB + " inside " + result.name + " but it doesn't seem to belong to the same season, ignoring it",
                 logger.WARNING)
diff --git a/sickbeard/nzbget.py b/sickbeard/nzbget.py
index 809133a97952190fb636fe75c17ae3c4543133b0..8ac44154500b1c766e1ed26d7158c43e608ff619 100644
--- a/sickbeard/nzbget.py
+++ b/sickbeard/nzbget.py
@@ -47,7 +47,7 @@ def sendNZB(nzb, proper=False):
     else:
         nzbgetXMLrpc = "http://%(username)s:%(password)s@%(host)s/xmlrpc"
 
-    if sickbeard.NZBGET_HOST == None:
+    if sickbeard.NZBGET_HOST is None:
         logger.log(u"No NZBget host found in configuration. Please configure it.", logger.ERROR)
         return False
 
@@ -116,7 +116,7 @@ def sendNZB(nzb, proper=False):
                 if nzb.resultType == "nzb":
                     genProvider = GenericProvider("")
                     data = genProvider.getURL(nzb.url)
-                    if data == None:
+                    if data is None:
                         return False
                     nzbcontent64 = standard_b64encode(data)
                 nzbget_result = nzbGetRPC.append(nzb.name + ".nzb", category, addToTop, nzbcontent64)
diff --git a/sickbeard/postProcessor.py b/sickbeard/postProcessor.py
index 575bf3b89a942ca4332cf85513564c3de7decff9..853210a86cbe089544709127ffa470ff3cad03c1 100644
--- a/sickbeard/postProcessor.py
+++ b/sickbeard/postProcessor.py
@@ -344,7 +344,7 @@ class PostProcessor(object):
                     cur_extension = cur_lang + os.path.splitext(cur_extension)[1]
 
             # replace .nfo with .nfo-orig to avoid conflicts
-            if cur_extension == 'nfo' and sickbeard.NFO_RENAME == True:
+            if cur_extension == 'nfo' and sickbeard.NFO_RENAME is True:
                 cur_extension = 'nfo-orig'
 
             # If new base name then convert name
@@ -521,7 +521,7 @@ class PostProcessor(object):
 
         # remember whether it's a proper
         if parse_result.extra_info:
-            self.is_proper = re.search(r'(^|[\. _-])(proper|repack)([\. _-]|$)', parse_result.extra_info, re.I) != None
+            self.is_proper = re.search(r'(^|[\. _-])(proper|repack)([\. _-]|$)', parse_result.extra_info, re.I) is not None
 
         # if the result is complete then remember that for later
         # if the result is complete then set release name
@@ -659,7 +659,7 @@ class PostProcessor(object):
             if cur_version is not None:
                 version = cur_version
 
-            if cur_season != None:
+            if cur_season is not None:
                 season = cur_season
             if cur_episodes:
                 episodes = cur_episodes
@@ -696,12 +696,12 @@ class PostProcessor(object):
                         continue
 
             # if there's no season then we can hopefully just use 1 automatically
-            elif season == None and show:
+            elif season is None and show:
                 myDB = db.DBConnection()
                 numseasonsSQlResult = myDB.select(
                     "SELECT COUNT(DISTINCT season) as numseasons FROM tv_episodes WHERE showid = ? and indexer = ? and season != 0",
                     [show.indexerid, show.indexer])
-                if int(numseasonsSQlResult[0][0]) == 1 and season == None:
+                if int(numseasonsSQlResult[0][0]) == 1 and season is None:
                     self._log(
                         u"Don't have a season number, but this show appears to only have 1 season, setting season number to 1...",
                         logger.DEBUG)
@@ -738,7 +738,7 @@ class PostProcessor(object):
                 raise EpisodePostProcessingFailedException()
 
             # associate all the episodes together under a single root episode
-            if root_ep == None:
+            if root_ep is None:
                 root_ep = curEp
                 root_ep.relatedEps = []
             elif curEp not in root_ep.relatedEps:
@@ -916,7 +916,7 @@ class PostProcessor(object):
         if not show:
             self._log(u"This show isn't in your list, you need to add it to SR before post-processing an episode")
             raise EpisodePostProcessingFailedException()
-        elif season == None or not episodes:
+        elif season is None or not episodes:
             self._log(u"Not enough information to determine what episode this is. Quitting post-processing")
             return False
 
diff --git a/sickbeard/providers/freshontv.py b/sickbeard/providers/freshontv.py
index 3c5b7688d2263a848cda22853a42611976029326..9038c819df2e041e79b55ba45a731a1d85859b37 100644
--- a/sickbeard/providers/freshontv.py
+++ b/sickbeard/providers/freshontv.py
@@ -190,7 +190,7 @@ class FreshOnTVProvider(generic.TorrentProvider):
                             for individual_torrent in torrent_rows:
 
                                 # skip if torrent has been nuked due to poor quality
-                                if individual_torrent.find('img', alt='Nuked') != None:
+                                if individual_torrent.find('img', alt='Nuked') is not None:
                                     continue
 
                                 try:
diff --git a/sickbeard/providers/morethantv.py b/sickbeard/providers/morethantv.py
index c89b22540ed42b04e4b01db0c55ed7a881b97bd6..10bfeb7052acf581d83b36a47b0f0b28665ffdd9 100644
--- a/sickbeard/providers/morethantv.py
+++ b/sickbeard/providers/morethantv.py
@@ -133,7 +133,7 @@ class MoreThanTVProvider(generic.TorrentProvider):
                             link = cells[1].find('a', attrs={'title': 'Download'})
 
                             # skip if torrent has been nuked due to poor quality
-                            if cells[1].find('img', alt='Nuked') != None:
+                            if cells[1].find('img', alt='Nuked') is not None:
                                 continue
 
                             torrent_id_long = link['href'].replace('torrents.php?action=download&id=', '')
diff --git a/sickbeard/providers/rarbg.py b/sickbeard/providers/rarbg.py
index 38921fb59daeefb9109ed48785645f571476ecdb..5a20d093f12681ee383a5a11da83e89c17267a8b 100644
--- a/sickbeard/providers/rarbg.py
+++ b/sickbeard/providers/rarbg.py
@@ -108,7 +108,7 @@ class RarbgProvider(generic.TorrentProvider):
         if not self._doLogin():
             return results
 
-        if epObj != None:
+        if epObj is not None:
             ep_indexerid = epObj.show.indexerid
             ep_indexer = epObj.show.indexer
         else:
diff --git a/sickbeard/sab.py b/sickbeard/sab.py
index b22c1b7f470fc01c3f4f31ebb7f62a492016b3e7..4c1cc0e7d8952ff68d86f03c4fc8b99c6191ce9a 100644
--- a/sickbeard/sab.py
+++ b/sickbeard/sab.py
@@ -44,11 +44,11 @@ def sendNZB(nzb):
 
     # set up a dict with the URL params in it
     params = {}
-    if sickbeard.SAB_USERNAME != None:
+    if sickbeard.SAB_USERNAME is not None:
         params['ma_username'] = sickbeard.SAB_USERNAME
-    if sickbeard.SAB_PASSWORD != None:
+    if sickbeard.SAB_PASSWORD is not None:
         params['ma_password'] = sickbeard.SAB_PASSWORD
-    if sickbeard.SAB_APIKEY != None:
+    if sickbeard.SAB_APIKEY is not None:
         params['apikey'] = sickbeard.SAB_APIKEY
     category = sickbeard.SAB_CATEGORY
     if nzb.show.is_anime:
@@ -61,7 +61,7 @@ def sendNZB(nzb):
             if nzb.show.is_anime:
                 category = sickbeard.SAB_CATEGORY_ANIME_BACKLOG
 
-    if category != None:
+    if category is not None:
         params['cat'] = category
 
     # use high priority if specified (recently aired episode)
@@ -120,7 +120,7 @@ def sendNZB(nzb):
         return False
 
     # this means we couldn't open the connection or something just as bad
-    if f == None:
+    if f is None:
         logger.log(u"No data returned from SABnzbd, NZB not sent", logger.ERROR)
         return False
 
@@ -202,7 +202,7 @@ def _sabURLOpenSimple(url):
     except httplib.InvalidURL, e:
         logger.log(u"Invalid SAB host, check your config: " + ex(e), logger.ERROR)
         return False, "Invalid SAB host"
-    if f == None:
+    if f is None:
         logger.log(u"No data returned from SABnzbd", logger.ERROR)
         return False, "No data returned from SABnzbd"
     else:
diff --git a/sickbeard/search.py b/sickbeard/search.py
index 263e8f6e70dd025a7d79007fa72fc9639ae5cb55..293016c7039b546878ffa48e3bb7593154954670 100644
--- a/sickbeard/search.py
+++ b/sickbeard/search.py
@@ -52,7 +52,7 @@ def _downloadResult(result):
     """
 
     resProvider = result.provider
-    if resProvider == None:
+    if resProvider is None:
         logger.log(u"Invalid provider name - this is a coding error, report it please", logger.ERROR)
         return False
 
@@ -106,7 +106,7 @@ def snatchEpisode(result, endStatus=SNATCHED):
         for curEp in result.episodes:
             if datetime.date.today() - curEp.airdate <= datetime.timedelta(days=7):
                 result.priority = 1
-    if re.search(r'(^|[\. _-])(proper|repack)([\. _-]|$)', result.name, re.I) != None:
+    if re.search(r'(^|[\. _-])(proper|repack)([\. _-]|$)', result.name, re.I) is not None:
         endStatus = SNATCHED_PROPER
 
     if result.url.startswith('magnet') or result.url.endswith('torrent'):
@@ -480,7 +480,7 @@ def searchProviders(show, episodes, manualSearch=False, downCurQuality=False):
         search_mode = curProvider.search_mode
 
         # Always search for episode when manually searching when in sponly
-        if search_mode == 'sponly' and manualSearch == True:
+        if search_mode == 'sponly' and manualSearch is True:
             search_mode = 'eponly'
 
         while True:
diff --git a/sickbeard/searchBacklog.py b/sickbeard/searchBacklog.py
index 9b5808ea24fd786d4dee85cc935b5e1980adb329..7ac69b0ae0dfcd33707b04d103e03c81c8d0462e 100644
--- a/sickbeard/searchBacklog.py
+++ b/sickbeard/searchBacklog.py
@@ -124,7 +124,7 @@ class BacklogSearcher:
 
         if len(sqlResults) == 0:
             lastBacklog = 1
-        elif sqlResults[0]["last_backlog"] == None or sqlResults[0]["last_backlog"] == "":
+        elif sqlResults[0]["last_backlog"] is None or sqlResults[0]["last_backlog"] == "":
             lastBacklog = 1
         else:
             lastBacklog = int(sqlResults[0]["last_backlog"])
diff --git a/sickbeard/show_queue.py b/sickbeard/show_queue.py
index c195832099dcb91a095eff98712106131be65b32..9cec79e7257cbdbd4844e319cfb7ffba7faf8995 100644
--- a/sickbeard/show_queue.py
+++ b/sickbeard/show_queue.py
@@ -48,7 +48,7 @@ class ShowQueue(generic_queue.GenericQueue):
         return show.indexerid in [x.show.indexerid if x.show else 0 for x in self.queue if x.action_id in actions]
 
     def _isBeingSomethinged(self, show, actions):
-        return self.currentItem != None and show == self.currentItem.show and \
+        return self.currentItem is not None and show == self.currentItem.show and \
                self.currentItem.action_id in actions
 
     def isInUpdateQueue(self, show):
@@ -79,7 +79,7 @@ class ShowQueue(generic_queue.GenericQueue):
         return self._isBeingSomethinged(show, (ShowQueueActions.SUBTITLE,))
 
     def _getLoadingShowList(self):
-        return [x for x in self.queue + [self.currentItem] if x != None and x.isLoading]
+        return [x for x in self.queue + [self.currentItem] if x is not None and x.isLoading]
 
     loadingShowList = property(_getLoadingShowList)
 
@@ -256,7 +256,7 @@ class QueueItemAdd(ShowQueueItem):
         Returns the show name if there is a show object created, if not returns
         the dir that the show is being added to.
         """
-        if self.show == None:
+        if self.show is None:
             return self.showDir
         return self.show.name
 
@@ -267,7 +267,7 @@ class QueueItemAdd(ShowQueueItem):
         Returns True if we've gotten far enough to have a show object, or False
         if we still only know the folder name.
         """
-        if self.show == None:
+        if self.show is None:
             return True
         return False
 
@@ -352,13 +352,13 @@ class QueueItemAdd(ShowQueueItem):
 
             # set up initial values
             self.show.location = self.showDir
-            self.show.subtitles = self.subtitles if self.subtitles != None else sickbeard.SUBTITLES_DEFAULT
+            self.show.subtitles = self.subtitles if self.subtitles is not None else sickbeard.SUBTITLES_DEFAULT
             self.show.quality = self.quality if self.quality else sickbeard.QUALITY_DEFAULT
-            self.show.flatten_folders = self.flatten_folders if self.flatten_folders != None else sickbeard.FLATTEN_FOLDERS_DEFAULT
-            self.show.anime = self.anime if self.anime != None else sickbeard.ANIME_DEFAULT
-            self.show.scene = self.scene if self.scene != None else sickbeard.SCENE_DEFAULT
-            self.show.archive_firstmatch = self.archive if self.archive != None else sickbeard.ARCHIVE_DEFAULT
-            self.show.paused = self.paused if self.paused != None else False
+            self.show.flatten_folders = self.flatten_folders if self.flatten_folders is not None else sickbeard.FLATTEN_FOLDERS_DEFAULT
+            self.show.anime = self.anime if self.anime is not None else sickbeard.ANIME_DEFAULT
+            self.show.scene = self.scene if self.scene is not None else sickbeard.SCENE_DEFAULT
+            self.show.archive_firstmatch = self.archive if self.archive is not None else sickbeard.ARCHIVE_DEFAULT
+            self.show.paused = self.paused if self.paused is not None else False
 
             # set up default new/missing episode status
             logger.log(u"Setting all episodes to the specified default status: " + str(self.show.default_ep_status))
@@ -479,7 +479,7 @@ class QueueItemAdd(ShowQueueItem):
         self.finish()
 
     def _finishEarly(self):
-        if self.show != None:
+        if self.show is not None:
             sickbeard.showQueueScheduler.action.removeShow(self.show)
 
         self.finish()
diff --git a/sickbeard/tv.py b/sickbeard/tv.py
index 6999fb4ef6527ecc6927084fe00b245d45650141..54aa8be9b0f73559b82d8e2889bf7006d9dada26 100644
--- a/sickbeard/tv.py
+++ b/sickbeard/tv.py
@@ -115,7 +115,7 @@ class TVShow(object):
         self.release_groups = None
 
         otherShow = helpers.findCertainShow(sickbeard.showList, self.indexerid)
-        if otherShow != None:
+        if otherShow is not None:
             raise MultipleShowObjectsException("Can't create a show if it already exists")
 
         self.loadFromDB()
@@ -283,7 +283,7 @@ class TVShow(object):
             else:
                 ep = TVEpisode(self, season, episode)
 
-            if ep != None:
+            if ep is not None:
                 self.episodes[season][episode] = ep
 
         return self.episodes[season][episode]
@@ -447,7 +447,7 @@ class TVShow(object):
                 curEpisode.release_name = ep_file_name
 
             # store the reference in the show
-            if curEpisode != None:
+            if curEpisode is not None:
                 if self.subtitles:
                     try:
                         curEpisode.refreshSubtitles()
@@ -644,7 +644,7 @@ class TVShow(object):
             return None
 
         # for now lets assume that any episode in the show dir belongs to that show
-        season = parse_result.season_number if parse_result.season_number != None else 1
+        season = parse_result.season_number if parse_result.season_number is not None else 1
         episodes = parse_result.episode_numbers
         rootEp = None
 
@@ -974,7 +974,7 @@ class TVShow(object):
                 "SELECT airdate, season, episode FROM tv_episodes WHERE showid = ? AND airdate >= ? AND status IN (?,?) ORDER BY airdate ASC LIMIT 1",
                 [self.indexerid, datetime.date.today().toordinal(), UNAIRED, WANTED])
 
-            if sqlResults == None or len(sqlResults) == 0:
+            if sqlResults is None or len(sqlResults) == 0:
                 logger.log(str(self.indexerid) + u": No episode found... need to implement a show status", logger.DEBUG)
                 self.nextaired = ""
             else:
@@ -1317,13 +1317,13 @@ class TVShow(object):
             elif epStatus in (SNATCHED, SNATCHED_PROPER, SNATCHED_BEST):
                 return Overview.SNATCHED
             # if they don't want re-downloads then we call it good if they have anything
-            elif maxBestQuality == None:
+            elif maxBestQuality is None:
                 return Overview.GOOD
             # if the want only first match and already have one call it good
             elif self.archive_firstmatch and curQuality in bestQualities:
                 return Overview.GOOD
             # if they want only first match and current quality is higher than minimal best quality call it good
-            elif self.archive_firstmatch and minBestQuality != None and curQuality > minBestQuality:
+            elif self.archive_firstmatch and minBestQuality is not None and curQuality > minBestQuality:
                 return Overview.GOOD
             # if they have one but it's not the best they want then mark it as qual
             elif curQuality < maxBestQuality:
@@ -2047,7 +2047,7 @@ class TVEpisode(object):
                     singleName = False
                     break
 
-                if curGoodName == None:
+                if curGoodName is None:
                     curGoodName = match.group(1)
                 elif curGoodName != match.group(1):
                     singleName = False
@@ -2195,14 +2195,14 @@ class TVEpisode(object):
         Manipulates an episode naming pattern and then fills the template in
         """
 
-        if pattern == None:
+        if pattern is None:
             pattern = sickbeard.NAMING_PATTERN
 
-        if multi == None:
+        if multi is None:
             multi = sickbeard.NAMING_MULTI_EP
 
         if sickbeard.NAMING_CUSTOM_ANIME:
-            if anime_type == None:
+            if anime_type is None:
                 anime_type = sickbeard.NAMING_ANIME
         else:
             anime_type = 3
@@ -2406,7 +2406,7 @@ class TVEpisode(object):
         Just the filename of the episode, formatted based on the naming settings
         """
 
-        if pattern == None:
+        if pattern is None:
             # we only use ABD if it's enabled, this is an ABD show, AND this is not a multi-ep
             if self.show.air_by_date and sickbeard.NAMING_CUSTOM_ABD and not self.relatedEps:
                 pattern = sickbeard.NAMING_ABD_PATTERN
diff --git a/sickbeard/tvcache.py b/sickbeard/tvcache.py
index 6c6ce5677c29117b532d7f9dd70be46af44da64c..5a9229bffa4c9fd47f5f07c2a828592891489ac3 100644
--- a/sickbeard/tvcache.py
+++ b/sickbeard/tvcache.py
@@ -298,7 +298,7 @@ class TVCache(object):
         myDB = self._getDB()
         sql = "SELECT * FROM [" + self.providerID + "] WHERE name LIKE '%.PROPER.%' OR name LIKE '%.REPACK.%'"
 
-        if date != None:
+        if date is not None:
             sql += " AND time >= " + str(int(time.mktime(date.timetuple())))
 
         propers_results = myDB.select(sql)
diff --git a/sickbeard/ui.py b/sickbeard/ui.py
index 3d7c559bf934d59c1d188a2b4c6d22ca90b50dc2..7b62dac3f416e2d5f430a96dd3768cb0179464bb 100644
--- a/sickbeard/ui.py
+++ b/sickbeard/ui.py
@@ -128,7 +128,7 @@ class ProgressIndicators():
 
         # if any of the progress indicators are done take them off the list
         for curPI in ProgressIndicators._pi[name]:
-            if curPI != None and curPI.percentComplete() == 100:
+            if curPI is not None and curPI.percentComplete() == 100:
                 ProgressIndicators._pi[name].remove(curPI)
 
         # return the list of progress indicators associated with this name
diff --git a/sickbeard/versionChecker.py b/sickbeard/versionChecker.py
index b3dbf50cd0bf4cac5c6032f00151a6a9bdd7e88a..331c4501c556325119c6c84a2193820a78b3d4f7 100644
--- a/sickbeard/versionChecker.py
+++ b/sickbeard/versionChecker.py
@@ -96,7 +96,7 @@ class CheckVersion(object):
             if not os.path.isdir(backupDir):
                 os.mkdir(backupDir)
 
-            if self._keeplatestbackup(backupDir) == True and self._backup(backupDir) == True:
+            if self._keeplatestbackup(backupDir) is True and self._backup(backupDir) is True:
                 logger.log(u"Config backup successful, updating...")
                 ui.notifications.message('Backup', 'Config backup successful, updating...')
                 return True
@@ -193,7 +193,7 @@ class CheckVersion(object):
         postprocessor_safe = postprocessor_safe()
         showupdate_safe = showupdate_safe()
 
-        if db_safe == True and postprocessor_safe == True and showupdate_safe == True:
+        if db_safe is True and postprocessor_safe is True and showupdate_safe is True:
             logger.log(u"Proceeding with auto update", logger.DEBUG)
             return True
         else:
diff --git a/sickbeard/webapi.py b/sickbeard/webapi.py
index 4a4a8bd980c7466cc8209ebffb3558696582a208..e61fe96f9cf19308cbe3c6ddf3a4f763eec30b0e 100644
--- a/sickbeard/webapi.py
+++ b/sickbeard/webapi.py
@@ -433,7 +433,7 @@ class ApiCall(ApiHandler):
     def _check_param_value(self, value, name, allowedValues):
         """ will check if value (or all values in it ) are in allowed values
             will raise an exception if value is "out of range"
-            if bool(allowedValue) == False a check is not performed and all values are excepted
+            if bool(allowedValue) is False a check is not performed and all values are excepted
         """
         if allowedValues:
             error = False
@@ -741,9 +741,9 @@ class CMD_Episode(ApiCall):
         except ShowDirectoryNotFoundException:
             pass
 
-        if bool(self.fullPath) == True and showPath:
+        if bool(self.fullPath) is True and showPath:
             pass
-        elif bool(self.fullPath) == False and showPath:
+        elif bool(self.fullPath) is False and showPath:
             # using the length because lstrip removes to much
             showPathLength = len(showPath) + 1  # the / or \ yeah not that nice i know
             episode["location"] = episode["location"][showPathLength:]
@@ -804,7 +804,7 @@ class CMD_EpisodeSearch(ApiCall):
         sickbeard.searchQueueScheduler.action.add_item(ep_queue_item)  # @UndefinedVariable
 
         # wait until the queue item tells us whether it worked or not
-        while ep_queue_item.success == None:  # @UndefinedVariable
+        while ep_queue_item.success is None:  # @UndefinedVariable
             time.sleep(1)
 
         # return the correct json value
@@ -862,7 +862,7 @@ class CMD_EpisodeSetStatus(ApiCall):
         ep_list = []
         if self.e:
             epObj = showObj.getEpisode(self.s, self.e)
-            if epObj == None:
+            if epObj is None:
                 return _responds(RESULT_FAILURE, msg="Episode not found")
             ep_list = [epObj]
         else:
@@ -890,7 +890,7 @@ class CMD_EpisodeSetStatus(ApiCall):
 
                 # don't let them mess up UNAIRED episodes
                 if epObj.status == UNAIRED:
-                    if self.e != None:  # setting the status of a unaired is only considert a failure if we directly wanted this episode, but is ignored on a season request
+                    if self.e is not None:  # setting the status of a unaired is only considert a failure if we directly wanted this episode, but is ignored on a season request
                         ep_results.append(
                             _epResult(RESULT_FAILURE, epObj, "Refusing to change status because it is UNAIRED"))
                         failure = True
@@ -1012,7 +1012,7 @@ class CMD_Exceptions(ApiCall):
         """ Get the scene exceptions for all or a given show """
         myDB = db.DBConnection("cache.db", row_type="dict")
 
-        if self.indexerid == None:
+        if self.indexerid is None:
             sqlResults = myDB.select("SELECT show_name, indexer_id AS 'indexerid' FROM scene_exceptions")
             scene_exceptions = {}
             for row in sqlResults:
@@ -1790,10 +1790,10 @@ class CMD_SickBeardSetDefaults(ApiCall):
                 raise ApiError("Status Prohibited")
             sickbeard.STATUS_DEFAULT = self.status
 
-        if self.flatten_folders != None:
+        if self.flatten_folders is not None:
             sickbeard.FLATTEN_FOLDERS_DEFAULT = int(self.flatten_folders)
 
-        if self.future_show_paused != None:
+        if self.future_show_paused is not None:
             sickbeard.COMING_EPS_DISPLAY_PAUSED = int(self.future_show_paused)
 
         return _responds(RESULT_SUCCESS, msg="Saved defaults")
@@ -2530,7 +2530,7 @@ class CMD_ShowSeasons(ApiCall):
 
         myDB = db.DBConnection(row_type="dict")
 
-        if self.season == None:
+        if self.season is None:
             sqlResults = myDB.select(
                 "SELECT name, episode, airdate, status, release_name, season, location, file_size, subtitles FROM tv_episodes WHERE showid = ?",
                 [self.indexerid])
diff --git a/tests/common_tests.py b/tests/common_tests.py
index 1ba62d02d5e958dccf085fc0b2065aed7782fc1b..b0e6a1df03d3cb955f6a2afb0d9fe0b20d2dedbb 100644
--- a/tests/common_tests.py
+++ b/tests/common_tests.py
@@ -236,7 +236,7 @@ class StatusStringsTest(unittest.TestCase):
         for i in unused:
             if i is None:
                 with self.assertRaises(TypeError):
-                    status_strings[str(i)] = 1  # 'None' != None
+                    status_strings[str(i)] = 1  # 'None' is not None
                 status_strings[i] = 1  # ...but None can still be used as a key
             else:
                 status_strings[str(i)] = 1