2
0

3 Commitit 804f98f46f ... d4b20c10cd

Tekijä SHA1 Viesti Päivämäärä
  Your Name d4b20c10cd token更改 6 vuotta sitten
  Your Name 525074c02a token更改 6 vuotta sitten
  Your Name cf57e383f8 日志修改 6 vuotta sitten

+ 317 - 321
hg3535/.idea/workspace.xml

@@ -3,29 +3,7 @@
   <component name="ChangeListManager">
   <component name="ChangeListManager">
     <list default="true" id="7fa42e97-ddea-4404-91db-5a9ccc162649" name="Default Changelist" comment="">
     <list default="true" id="7fa42e97-ddea-4404-91db-5a9ccc162649" name="Default Changelist" comment="">
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/ball_func.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/ball_func.py" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/pipeline/bangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/bangqiu.py" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/pipeline/bangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/bangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/guanjun.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/guanjun.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/jieshu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/jieshu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/lanqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/lanqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/roll_bangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/roll_bangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/roll_lanqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/roll_lanqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/roll_wangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/roll_wangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/roll_zuqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/roll_zuqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/saiguo.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/saiguo.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/wangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/wangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/zhibo.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/zhibo.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pipeline/zuqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/pipeline/zuqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/bangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/bangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/guanjun.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/guanjun.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/jieshu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/jieshu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/lanqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/lanqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/roll_lanqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/roll_lanqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/roll_zuqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/roll_zuqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/saiguo.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/saiguo.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/wangqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/wangqiu.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/zhibo.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/zhibo.py" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/spiders/zuqiu.py" beforeDir="false" afterPath="$PROJECT_DIR$/spiders/zuqiu.py" afterDir="false" />
     </list>
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
     <option name="SHOW_DIALOG" value="false" />
@@ -35,7 +13,7 @@
   </component>
   </component>
   <component name="CoverageDataManager">
   <component name="CoverageDataManager">
     <SUITE FILE_PATH="coverage/hg3535$items.coverage" NAME="items Coverage Results" MODIFIED="1554291398794" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
     <SUITE FILE_PATH="coverage/hg3535$items.coverage" NAME="items Coverage Results" MODIFIED="1554291398794" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
-    <SUITE FILE_PATH="coverage/hg3535$main.coverage" NAME="main Coverage Results" MODIFIED="1572676605765" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
+    <SUITE FILE_PATH="coverage/hg3535$main.coverage" NAME="main Coverage Results" MODIFIED="1573453434568" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
     <SUITE FILE_PATH="coverage/hg3535$change.coverage" NAME="change Coverage Results" MODIFIED="1567749757856" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
     <SUITE FILE_PATH="coverage/hg3535$change.coverage" NAME="change Coverage Results" MODIFIED="1567749757856" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
     <SUITE FILE_PATH="coverage/hg3535$hgjieshu.coverage" NAME="hgjieshu Coverage Results" MODIFIED="1558494720094" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/spiders" />
     <SUITE FILE_PATH="coverage/hg3535$hgjieshu.coverage" NAME="hgjieshu Coverage Results" MODIFIED="1558494720094" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/spiders" />
     <SUITE FILE_PATH="coverage/hg3535$halffull.coverage" NAME="halffull Coverage Results" MODIFIED="1554544334424" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/spiders" />
     <SUITE FILE_PATH="coverage/hg3535$halffull.coverage" NAME="halffull Coverage Results" MODIFIED="1554544334424" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/spiders" />
@@ -65,108 +43,117 @@
   <component name="FileEditorManager">
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/jieshu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/zuqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="60">
-              <caret line="3" column="11" selection-start-line="3" selection-start-column="11" selection-end-line="3" selection-end-column="11" />
+            <state relative-caret-position="1500">
+              <caret line="75" column="51" lean-forward="true" selection-start-line="75" selection-start-column="36" selection-end-line="75" selection-end-column="67" />
+              <folding>
+                <element signature="e#18#33#0" expanded="true" />
+              </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
-      <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/lanqiu.py">
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/pipeline/bangqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="80">
-              <caret line="4" column="11" selection-start-line="4" selection-start-column="11" selection-end-line="4" selection-end-column="11" />
+            <state relative-caret-position="-3958">
+              <caret line="11" selection-start-line="11" selection-end-line="11" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/roll_bangqiu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/lanqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="80">
-              <caret line="4" lean-forward="true" selection-start-line="4" selection-end-line="4" />
+            <state relative-caret-position="20">
+              <caret line="15" column="120" selection-start-line="15" selection-start-column="120" selection-end-line="15" selection-end-column="120" />
+              <folding>
+                <element signature="e#20#35#0" expanded="true" />
+              </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/roll_lanqiu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/wangqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="40">
-              <caret line="2" column="11" selection-start-line="2" selection-start-column="11" selection-end-line="2" selection-end-column="11" />
+            <state relative-caret-position="120">
+              <caret line="16" column="120" selection-start-line="16" selection-start-column="120" selection-end-line="16" selection-end-column="120" />
+              <folding>
+                <element signature="e#20#35#0" expanded="true" />
+              </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
-      <file pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/spiders/roll_wangqiu.py">
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/pipeline/zhibo.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="5680">
-              <caret line="323" column="31" selection-start-line="323" selection-start-column="26" selection-end-line="323" selection-end-column="31" />
+            <state relative-caret-position="320">
+              <caret line="16" column="120" selection-start-line="16" selection-start-column="120" selection-end-line="16" selection-end-column="120" />
               <folding>
               <folding>
-                <element signature="e#24#39#0" expanded="true" />
+                <element signature="e#20#34#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/roll_zuqiu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/roll_wangqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="20">
-              <caret line="1" selection-start-line="1" selection-end-line="1" />
+            <state relative-caret-position="504">
+              <caret line="233" selection-start-line="233" selection-end-line="233" />
               <folding>
               <folding>
-                <element signature="e#38#53#0" expanded="true" />
+                <element signature="e#20#35#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/saiguo.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/roll_bangqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="40">
-              <caret line="2" selection-start-line="2" selection-end-line="2" />
+            <state relative-caret-position="280">
+              <caret line="14" column="106" lean-forward="true" selection-start-line="14" selection-start-column="105" selection-end-line="14" selection-end-column="120" />
               <folding>
               <folding>
-                <element signature="e#0#15#0" expanded="true" />
+                <element signature="e#20#35#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/wangqiu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/roll_zuqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="20">
-              <caret line="1" selection-start-line="1" selection-end-line="1" />
+            <state relative-caret-position="80">
+              <caret line="67" column="37" lean-forward="true" selection-start-line="67" selection-start-column="36" selection-end-line="67" selection-end-column="67" />
               <folding>
               <folding>
-                <element signature="e#48#59#0" expanded="true" />
+                <element signature="e#20#35#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/zhibo.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/saiguo.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="40">
-              <caret line="2" selection-start-line="2" selection-end-line="2" />
+            <state relative-caret-position="300">
+              <caret line="15" column="120" selection-start-line="15" selection-start-column="120" selection-end-line="15" selection-end-column="120" />
               <folding>
               <folding>
-                <element signature="e#38#53#0" expanded="true" />
+                <element signature="e#19#33#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
       <file pinned="false" current-in-tab="false">
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/spiders/zuqiu.py">
+        <entry file="file://$PROJECT_DIR$/pipeline/roll_lanqiu.py">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state>
-              <caret line="12" selection-start-line="12" selection-end-line="12" />
+            <state relative-caret-position="239">
+              <caret line="78" column="38" lean-forward="true" selection-start-line="78" selection-start-column="36" selection-end-line="78" selection-end-column="67" />
               <folding>
               <folding>
-                <element signature="e#24#35#0" expanded="true" />
+                <element signature="e#19#34#0" expanded="true" />
               </folding>
               </folding>
             </state>
             </state>
           </provider>
           </provider>
@@ -183,7 +170,6 @@
   </component>
   </component>
   <component name="FindInProjectRecents">
   <component name="FindInProjectRecents">
     <findStrings>
     <findStrings>
-      <find>p_code</find>
       <find>3438017</find>
       <find>3438017</find>
       <find>team_scores_dict</find>
       <find>team_scores_dict</find>
       <find>total_sizes_dict</find>
       <find>total_sizes_dict</find>
@@ -211,8 +197,9 @@
       <find>datetime</find>
       <find>datetime</find>
       <find>篮球滚球详细赔率列表, 不提交</find>
       <find>篮球滚球详细赔率列表, 不提交</find>
       <find>full_dict_rules_data</find>
       <find>full_dict_rules_data</find>
-      <find>utime</find>
       <find>jijie</find>
       <find>jijie</find>
+      <find>match_time</find>
+      <find>utime</find>
     </findStrings>
     </findStrings>
     <replaceStrings>
     <replaceStrings>
       <replace>&quot;&quot;</replace>
       <replace>&quot;&quot;</replace>
@@ -267,7 +254,6 @@
   <component name="IdeDocumentHistory">
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
     <option name="CHANGED_PATHS">
       <list>
       <list>
-        <option value="$PROJECT_DIR$/spiders/hgjieshu.py" />
         <option value="$PROJECT_DIR$/spiders/hg3535_bangqiu.py" />
         <option value="$PROJECT_DIR$/spiders/hg3535_bangqiu.py" />
         <option value="$PROJECT_DIR$/spiders/hg3535_lanqiu.py" />
         <option value="$PROJECT_DIR$/spiders/hg3535_lanqiu.py" />
         <option value="$PROJECT_DIR$/main_time.py" />
         <option value="$PROJECT_DIR$/main_time.py" />
@@ -283,22 +269,30 @@
         <option value="$PROJECT_DIR$/middlewares.py" />
         <option value="$PROJECT_DIR$/middlewares.py" />
         <option value="$PROJECT_DIR$/pipelines.py" />
         <option value="$PROJECT_DIR$/pipelines.py" />
         <option value="$PROJECT_DIR$/items.py" />
         <option value="$PROJECT_DIR$/items.py" />
-        <option value="$PROJECT_DIR$/utils/helper.py" />
         <option value="$PROJECT_DIR$/proj/celerys.py" />
         <option value="$PROJECT_DIR$/proj/celerys.py" />
         <option value="$PROJECT_DIR$/proj/config.py" />
         <option value="$PROJECT_DIR$/proj/config.py" />
         <option value="$PROJECT_DIR$/proj/celeryconfig" />
         <option value="$PROJECT_DIR$/proj/celeryconfig" />
         <option value="$PROJECT_DIR$/proj/tasks.py" />
         <option value="$PROJECT_DIR$/proj/tasks.py" />
         <option value="$PROJECT_DIR$/proj/celeryconfig.py" />
         <option value="$PROJECT_DIR$/proj/celeryconfig.py" />
         <option value="$PROJECT_DIR$/proj/celery.py" />
         <option value="$PROJECT_DIR$/proj/celery.py" />
-        <option value="$PROJECT_DIR$/utils/LocalToken.py" />
-        <option value="$PROJECT_DIR$/settings.py" />
-        <option value="$PROJECT_DIR$/main.py" />
-        <option value="$PROJECT_DIR$/spiders/roll_bangqiu.py" />
+        <option value="$PROJECT_DIR$/pipeline/ball_func.py" />
+        <option value="$PROJECT_DIR$/roll.py" />
+        <option value="$PROJECT_DIR$/spiders/zuqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/zhibo.py" />
+        <option value="$PROJECT_DIR$/spiders/wangqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/saiguo.py" />
+        <option value="$PROJECT_DIR$/spiders/roll_zuqiu.py" />
         <option value="$PROJECT_DIR$/spiders/roll_wangqiu.py" />
         <option value="$PROJECT_DIR$/spiders/roll_wangqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/roll_lanqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/roll_bangqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/lanqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/jieshu.py" />
+        <option value="$PROJECT_DIR$/spiders/bangqiu.py" />
+        <option value="$PROJECT_DIR$/spiders/guanjun.py" />
         <option value="$PROJECT_DIR$/pipeline/zuqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/zuqiu.py" />
-        <option value="$PROJECT_DIR$/pipeline/zhibo.py" />
-        <option value="$PROJECT_DIR$/pipeline/wangqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/saiguo.py" />
         <option value="$PROJECT_DIR$/pipeline/saiguo.py" />
+        <option value="$PROJECT_DIR$/pipeline/wangqiu.py" />
+        <option value="$PROJECT_DIR$/pipeline/zhibo.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_zuqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_zuqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_wangqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_wangqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_lanqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/roll_lanqiu.py" />
@@ -306,25 +300,18 @@
         <option value="$PROJECT_DIR$/pipeline/lanqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/lanqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/jieshu.py" />
         <option value="$PROJECT_DIR$/pipeline/jieshu.py" />
         <option value="$PROJECT_DIR$/pipeline/guanjun.py" />
         <option value="$PROJECT_DIR$/pipeline/guanjun.py" />
+        <option value="$PROJECT_DIR$/settings.py" />
+        <option value="$PROJECT_DIR$/main.py" />
+        <option value="$PROJECT_DIR$/utils/helper.py" />
+        <option value="$PROJECT_DIR$/utils/LocalToken.py" />
         <option value="$PROJECT_DIR$/pipeline/bangqiu.py" />
         <option value="$PROJECT_DIR$/pipeline/bangqiu.py" />
-        <option value="$PROJECT_DIR$/pipeline/ball_func.py" />
-        <option value="$PROJECT_DIR$/spiders/bangqiu.py" />
-        <option value="$PROJECT_DIR$/spiders/guanjun.py" />
-        <option value="$PROJECT_DIR$/spiders/jieshu.py" />
-        <option value="$PROJECT_DIR$/spiders/lanqiu.py" />
-        <option value="$PROJECT_DIR$/spiders/roll_lanqiu.py" />
-        <option value="$PROJECT_DIR$/spiders/roll_zuqiu.py" />
-        <option value="$PROJECT_DIR$/spiders/saiguo.py" />
-        <option value="$PROJECT_DIR$/spiders/wangqiu.py" />
-        <option value="$PROJECT_DIR$/spiders/zhibo.py" />
-        <option value="$PROJECT_DIR$/spiders/zuqiu.py" />
       </list>
       </list>
     </option>
     </option>
   </component>
   </component>
   <component name="ProjectFrameBounds" extendedState="6">
   <component name="ProjectFrameBounds" extendedState="6">
-    <option name="x" value="77" />
-    <option name="y" value="219" />
-    <option name="width" value="1216" />
+    <option name="x" value="686" />
+    <option name="y" value="100" />
+    <option name="width" value="1252" />
     <option name="height" value="881" />
     <option name="height" value="881" />
   </component>
   </component>
   <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
   <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
@@ -333,7 +320,6 @@
       <foldersAlwaysOnTop value="true" />
       <foldersAlwaysOnTop value="true" />
     </navigator>
     </navigator>
     <panes>
     <panes>
-      <pane id="Scope" />
       <pane id="ProjectPane">
       <pane id="ProjectPane">
         <subPane>
         <subPane>
           <expand>
           <expand>
@@ -341,6 +327,11 @@
               <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
               <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
             </path>
             </path>
+            <path>
+              <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
+              <item name="hg3535" type="462c0819:PsiDirectoryNode" />
+              <item name="log" type="462c0819:PsiDirectoryNode" />
+            </path>
             <path>
             <path>
               <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
               <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
@@ -351,10 +342,16 @@
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
               <item name="hg3535" type="462c0819:PsiDirectoryNode" />
               <item name="spiders" type="462c0819:PsiDirectoryNode" />
               <item name="spiders" type="462c0819:PsiDirectoryNode" />
             </path>
             </path>
+            <path>
+              <item name="hg3535" type="b2602c69:ProjectViewProjectNode" />
+              <item name="hg3535" type="462c0819:PsiDirectoryNode" />
+              <item name="utils" type="462c0819:PsiDirectoryNode" />
+            </path>
           </expand>
           </expand>
           <select />
           <select />
         </subPane>
         </subPane>
       </pane>
       </pane>
+      <pane id="Scope" />
     </panes>
     </panes>
   </component>
   </component>
   <component name="PropertiesComponent">
   <component name="PropertiesComponent">
@@ -366,15 +363,15 @@
     <property name="settings.editor.selected.configurable" value="editor.preferences.fonts.default" />
     <property name="settings.editor.selected.configurable" value="editor.preferences.fonts.default" />
   </component>
   </component>
   <component name="RecentsManager">
   <component name="RecentsManager">
-    <key name="MoveFile.RECENT_KEYS">
-      <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535" />
-      <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\spiders" />
-    </key>
     <key name="CopyFile.RECENT_KEYS">
     <key name="CopyFile.RECENT_KEYS">
+      <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\utils" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\utils" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\pipeline" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\pipeline" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\spiders" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\spiders" />
+    </key>
+    <key name="MoveFile.RECENT_KEYS">
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535" />
       <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535" />
+      <recent name="C:\Users\admin\Desktop\sports_scrapy\hg3535\spiders" />
     </key>
     </key>
   </component>
   </component>
   <component name="RunDashboard">
   <component name="RunDashboard">
@@ -695,28 +692,8 @@
       <workItem from="1573034858244" duration="664000" />
       <workItem from="1573034858244" duration="664000" />
       <workItem from="1573041285410" duration="939000" />
       <workItem from="1573041285410" duration="939000" />
       <workItem from="1573090124717" duration="596000" />
       <workItem from="1573090124717" duration="596000" />
-      <workItem from="1573200066023" duration="346000" />
-    </task>
-    <task id="LOCAL-00071" summary="更新">
-      <created>1568112995602</created>
-      <option name="number" value="00071" />
-      <option name="presentableId" value="LOCAL-00071" />
-      <option name="project" value="LOCAL" />
-      <updated>1568112995602</updated>
-    </task>
-    <task id="LOCAL-00072" summary="更新">
-      <created>1568165743587</created>
-      <option name="number" value="00072" />
-      <option name="presentableId" value="LOCAL-00072" />
-      <option name="project" value="LOCAL" />
-      <updated>1568165743587</updated>
-    </task>
-    <task id="LOCAL-00073" summary="更新">
-      <created>1568169349308</created>
-      <option name="number" value="00073" />
-      <option name="presentableId" value="LOCAL-00073" />
-      <option name="project" value="LOCAL" />
-      <updated>1568169349308</updated>
+      <workItem from="1573200066023" duration="2146000" />
+      <workItem from="1573285651258" duration="14550000" />
     </task>
     </task>
     <task id="LOCAL-00074" summary="更新">
     <task id="LOCAL-00074" summary="更新">
       <created>1568169892765</created>
       <created>1568169892765</created>
@@ -1040,11 +1017,32 @@
       <option name="project" value="LOCAL" />
       <option name="project" value="LOCAL" />
       <updated>1573011671871</updated>
       <updated>1573011671871</updated>
     </task>
     </task>
-    <option name="localTasksCounter" value="120" />
+    <task id="LOCAL-00120" summary="添加危险球类型">
+      <created>1573200429097</created>
+      <option name="number" value="00120" />
+      <option name="presentableId" value="LOCAL-00120" />
+      <option name="project" value="LOCAL" />
+      <updated>1573200429097</updated>
+    </task>
+    <task id="LOCAL-00121" summary="日志修改">
+      <created>1573441890072</created>
+      <option name="number" value="00121" />
+      <option name="presentableId" value="LOCAL-00121" />
+      <option name="project" value="LOCAL" />
+      <updated>1573441890072</updated>
+    </task>
+    <task id="LOCAL-00122" summary="token更改">
+      <created>1573454090331</created>
+      <option name="number" value="00122" />
+      <option name="presentableId" value="LOCAL-00122" />
+      <option name="project" value="LOCAL" />
+      <updated>1573454090331</updated>
+    </task>
+    <option name="localTasksCounter" value="123" />
     <servers />
     <servers />
   </component>
   </component>
   <component name="TimeTrackingManager">
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="2169558000" />
+    <option name="totallyTimeSpent" value="2185908000" />
   </component>
   </component>
   <component name="TodoView">
   <component name="TodoView">
     <todo-panel id="selected-file">
     <todo-panel id="selected-file">
@@ -1057,14 +1055,13 @@
   </component>
   </component>
   <component name="ToolWindowManager">
   <component name="ToolWindowManager">
     <frame x="-8" y="-8" width="1936" height="1066" extended-state="6" />
     <frame x="-8" y="-8" width="1936" height="1066" extended-state="6" />
-    <editor active="true" />
     <layout>
     <layout>
-      <window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.71173847" visible="true" weight="0.0836887" />
+      <window_info content_ui="combo" id="Project" order="0" sideWeight="0.71173847" visible="true" weight="0.12953092" />
       <window_info id="Structure" order="1" sideWeight="0.2882615" side_tool="true" weight="0.1108742" />
       <window_info id="Structure" order="1" sideWeight="0.2882615" side_tool="true" weight="0.1108742" />
       <window_info id="Favorites" order="2" sideWeight="0.5013405" side_tool="true" weight="0.108208954" />
       <window_info id="Favorites" order="2" sideWeight="0.5013405" side_tool="true" weight="0.108208954" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Find" order="1" weight="0.3264516" />
       <window_info anchor="bottom" id="Find" order="1" weight="0.3264516" />
-      <window_info anchor="bottom" id="Debug" order="2" sideWeight="0.49573562" weight="0.24678111" />
+      <window_info anchor="bottom" id="Debug" order="2" sideWeight="0.49573562" weight="0.5472103" />
       <window_info anchor="bottom" id="Cvs" order="3" weight="0.25" />
       <window_info anchor="bottom" id="Cvs" order="3" weight="0.25" />
       <window_info anchor="bottom" id="Inspection" order="4" weight="0.4" />
       <window_info anchor="bottom" id="Inspection" order="4" weight="0.4" />
       <window_info anchor="bottom" id="TODO" order="5" weight="0.32832617" />
       <window_info anchor="bottom" id="TODO" order="5" weight="0.32832617" />
@@ -1072,8 +1069,8 @@
       <window_info anchor="bottom" id="Version Control" order="7" weight="0.1555794" />
       <window_info anchor="bottom" id="Version Control" order="7" weight="0.1555794" />
       <window_info anchor="bottom" id="Database Changes" order="8" />
       <window_info anchor="bottom" id="Database Changes" order="8" />
       <window_info anchor="bottom" id="Event Log" order="9" sideWeight="0.5042644" side_tool="true" weight="0.2725322" />
       <window_info anchor="bottom" id="Event Log" order="9" sideWeight="0.5042644" side_tool="true" weight="0.2725322" />
-      <window_info anchor="bottom" x="22" y="376" width="1876" height="298" id="Terminal" order="10" sideWeight="0.49307036" visible="true" weight="0.17811158" />
-      <window_info anchor="bottom" id="Python Console" order="11" sideWeight="0.49946696" weight="0.3143777" />
+      <window_info active="true" anchor="bottom" x="22" y="376" width="1876" height="298" id="Terminal" order="10" sideWeight="0.49307036" visible="true" weight="0.34334764" />
+      <window_info anchor="bottom" id="Python Console" order="11" sideWeight="0.49946696" weight="0.41738197" />
       <window_info anchor="bottom" id="Run" order="12" sideWeight="0.87473345" weight="0.34002677" />
       <window_info anchor="bottom" id="Run" order="12" sideWeight="0.87473345" weight="0.34002677" />
       <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
       <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
@@ -1157,8 +1154,6 @@
     </option>
     </option>
   </component>
   </component>
   <component name="VcsManagerConfiguration">
   <component name="VcsManagerConfiguration">
-    <MESSAGE value="修改冠军" />
-    <MESSAGE value="联赛添加redis测试" />
     <MESSAGE value="联赛添加冠军,联赛过滤" />
     <MESSAGE value="联赛添加冠军,联赛过滤" />
     <MESSAGE value="修改足球,篮球赔率表插入" />
     <MESSAGE value="修改足球,篮球赔率表插入" />
     <MESSAGE value="修改赔率条件,部分赔率减1" />
     <MESSAGE value="修改赔率条件,部分赔率减1" />
@@ -1182,7 +1177,9 @@
     <MESSAGE value="添加token重新获取" />
     <MESSAGE value="添加token重新获取" />
     <MESSAGE value="修改赛事时间不一致" />
     <MESSAGE value="修改赛事时间不一致" />
     <MESSAGE value="添加危险球类型" />
     <MESSAGE value="添加危险球类型" />
-    <option name="LAST_COMMIT_MESSAGE" value="添加危险球类型" />
+    <MESSAGE value="日志修改" />
+    <MESSAGE value="token更改" />
+    <option name="LAST_COMMIT_MESSAGE" value="token更改" />
   </component>
   </component>
   <component name="XDebuggerManager">
   <component name="XDebuggerManager">
     <breakpoint-manager>
     <breakpoint-manager>
@@ -1194,7 +1191,7 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_wangqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_wangqiu.py</url>
-          <line>265</line>
+          <line>255</line>
           <option name="timeStamp" value="71" />
           <option name="timeStamp" value="71" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
@@ -1209,12 +1206,12 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_bangqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_bangqiu.py</url>
-          <line>108</line>
+          <line>104</line>
           <option name="timeStamp" value="265" />
           <option name="timeStamp" value="265" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_bangqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_bangqiu.py</url>
-          <line>111</line>
+          <line>107</line>
           <option name="timeStamp" value="266" />
           <option name="timeStamp" value="266" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
@@ -1234,12 +1231,12 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/guanjun.py</url>
           <url>file://$PROJECT_DIR$/pipeline/guanjun.py</url>
-          <line>124</line>
+          <line>116</line>
           <option name="timeStamp" value="273" />
           <option name="timeStamp" value="273" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>105</line>
+          <line>101</line>
           <option name="timeStamp" value="279" />
           <option name="timeStamp" value="279" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
@@ -1249,17 +1246,17 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/jieshu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/jieshu.py</url>
-          <line>63</line>
+          <line>62</line>
           <option name="timeStamp" value="298" />
           <option name="timeStamp" value="298" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/zuqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/zuqiu.py</url>
-          <line>556</line>
+          <line>557</line>
           <option name="timeStamp" value="314" />
           <option name="timeStamp" value="314" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/zuqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/zuqiu.py</url>
-          <line>559</line>
+          <line>560</line>
           <option name="timeStamp" value="315" />
           <option name="timeStamp" value="315" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
@@ -1269,47 +1266,32 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/lanqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/lanqiu.py</url>
-          <line>136</line>
+          <line>133</line>
           <option name="timeStamp" value="318" />
           <option name="timeStamp" value="318" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/lanqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/lanqiu.py</url>
-          <line>270</line>
+          <line>263</line>
           <option name="timeStamp" value="319" />
           <option name="timeStamp" value="319" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/utils/helper.py</url>
           <url>file://$PROJECT_DIR$/utils/helper.py</url>
-          <line>12</line>
+          <line>13</line>
           <option name="timeStamp" value="321" />
           <option name="timeStamp" value="321" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>244</line>
+          <line>235</line>
           <option name="timeStamp" value="322" />
           <option name="timeStamp" value="322" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>58</line>
-          <option name="timeStamp" value="323" />
-        </line-breakpoint>
-        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
-          <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>59</line>
-          <option name="timeStamp" value="324" />
-        </line-breakpoint>
-        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
-          <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>60</line>
-          <option name="timeStamp" value="325" />
-        </line-breakpoint>
-        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
-          <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>124</line>
+          <line>115</line>
           <option name="timeStamp" value="326" />
           <option name="timeStamp" value="326" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/jieshu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/jieshu.py</url>
-          <line>65</line>
+          <line>64</line>
           <option name="timeStamp" value="327" />
           <option name="timeStamp" value="327" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
@@ -1339,24 +1321,24 @@
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
-          <line>535</line>
+          <line>536</line>
           <option name="timeStamp" value="333" />
           <option name="timeStamp" value="333" />
         </line-breakpoint>
         </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
-          <line>566</line>
+          <line>567</line>
           <option name="timeStamp" value="334" />
           <option name="timeStamp" value="334" />
         </line-breakpoint>
         </line-breakpoint>
-        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
-          <url>file://$PROJECT_DIR$/pipeline/roll_lanqiu.py</url>
-          <line>54</line>
-          <option name="timeStamp" value="335" />
-        </line-breakpoint>
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
         <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
           <url>file://$PROJECT_DIR$/pipeline/roll_zuqiu.py</url>
           <line>88</line>
           <line>88</line>
           <option name="timeStamp" value="336" />
           <option name="timeStamp" value="336" />
         </line-breakpoint>
         </line-breakpoint>
+        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
+          <url>file://$PROJECT_DIR$/utils/helper.py</url>
+          <line>17</line>
+          <option name="timeStamp" value="337" />
+        </line-breakpoint>
       </breakpoints>
       </breakpoints>
       <default-breakpoints>
       <default-breakpoints>
         <breakpoint type="python-exception">
         <breakpoint type="python-exception">
@@ -1384,28 +1366,6 @@
     </expressions>
     </expressions>
   </component>
   </component>
   <component name="editorHistoryManager">
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/log/FTzhibo_2019_10_16.log" />
-    <entry file="file://$PROJECT_DIR$/jianting.py">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/ball_func.py" />
-    <entry file="file://$PROJECT_DIR$/main_time.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <folding>
-            <element signature="e#0#11#0" expanded="true" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/guanjun.sh" />
-    <entry file="file://$PROJECT_DIR$/pipelines.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="120">
-          <caret line="6" lean-forward="true" selection-start-line="6" selection-end-line="6" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/requirements.txt" />
     <entry file="file://$PROJECT_DIR$/requirements.txt" />
     <entry file="file://$PROJECT_DIR$/middlewares.py">
     <entry file="file://$PROJECT_DIR$/middlewares.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
@@ -1420,13 +1380,6 @@
     <entry file="file://$PROJECT_DIR$/utils/__init__.py">
     <entry file="file://$PROJECT_DIR$/utils/__init__.py">
       <provider selected="true" editor-type-id="text-editor" />
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/utils/langconv.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="3620">
-          <caret line="182" selection-start-line="182" selection-end-line="182" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://C:/venv/Lib/site-packages/redis/client.py">
     <entry file="file://C:/venv/Lib/site-packages/redis/client.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="201">
         <state relative-caret-position="201">
@@ -1434,312 +1387,355 @@
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/roll.py">
+    <entry file="file://$PROJECT_DIR$/proj/__init__.py" />
+    <entry file="file://$PROJECT_DIR$/proj/tasks.py" />
+    <entry file="file://$PROJECT_DIR$/proj/celeryconfig.py" />
+    <entry file="file://$PROJECT_DIR$/proj/celery.py" />
+    <entry file="file://$PROJECT_DIR$/hgg070" />
+    <entry file="file://$PROJECT_DIR$/spiders/wqbodan.py" />
+    <entry file="file://$PROJECT_DIR$/spiders/liansai.py" />
+    <entry file="file://$PROJECT_DIR$/change.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="180">
-          <caret line="9" lean-forward="true" selection-start-line="9" selection-end-line="9" />
+        <state relative-caret-position="240">
+          <caret line="12" selection-start-line="12" selection-end-line="12" />
           <folding>
           <folding>
             <element signature="e#0#11#0" expanded="true" />
             <element signature="e#0#11#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/proj/__init__.py" />
-    <entry file="file://$PROJECT_DIR$/proj/tasks.py" />
-    <entry file="file://$PROJECT_DIR$/proj/celeryconfig.py" />
-    <entry file="file://$PROJECT_DIR$/proj/celery.py" />
-    <entry file="file://$PROJECT_DIR$/utils/LocalToken.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/ball_func.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="93" selection-start-column="93" selection-end-column="93" />
+        <state relative-caret-position="60">
+          <caret line="3" selection-start-line="3" selection-end-line="3" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/hgg070" />
-    <entry file="file://$PROJECT_DIR$/main.py">
+    <entry file="file://$PROJECT_DIR$/utils/langconv.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="280">
-          <caret line="14" column="42" selection-start-line="14" selection-start-column="42" selection-end-line="14" selection-end-column="42" />
+        <state relative-caret-position="3620">
+          <caret line="182" selection-start-line="182" selection-end-line="182" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/utils/zh_wiki.py">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/not_roll.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state>
+          <caret selection-end-line="3" selection-end-column="65" />
           <folding>
           <folding>
-            <element signature="e#0#10#0" expanded="true" />
+            <element signature="e#0#11#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/utils/helper.py">
+    <entry file="file://$PROJECT_DIR$/run_ball.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-216">
-          <caret line="12" selection-start-line="12" selection-end-line="12" />
+        <state relative-caret-position="-387">
+          <caret line="10" lean-forward="true" selection-start-line="10" selection-end-line="10" />
           <folding>
           <folding>
-            <element signature="e#0#14#0" expanded="true" />
+            <element signature="e#0#11#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/settings.py">
+    <entry file="file://$PROJECT_DIR$/spiders/zuqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="2564">
-          <caret line="137" column="48" selection-start-line="137" selection-start-column="48" selection-end-line="137" selection-end-column="48" />
+        <state relative-caret-position="220">
+          <caret line="22" selection-start-line="22" selection-end-line="23" selection-end-column="93" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/wqbodan.py" />
-    <entry file="file://$PROJECT_DIR$/spiders/liansai.py" />
-    <entry file="file://$PROJECT_DIR$/items.py">
+    <entry file="file://$PROJECT_DIR$/spiders/zhibo.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="635">
-          <caret line="506" column="25" selection-start-line="506" selection-start-column="25" selection-end-line="506" selection-end-column="25" />
+        <state relative-caret-position="300">
+          <caret line="21" column="27" lean-forward="true" selection-start-line="21" selection-start-column="27" selection-end-line="21" selection-end-column="27" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/change.py">
+    <entry file="file://$PROJECT_DIR$/spiders/wangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="12" selection-start-line="12" selection-end-line="12" />
-          <folding>
-            <element signature="e#0#11#0" expanded="true" />
-          </folding>
+        <state relative-caret-position="280">
+          <caret line="19" column="22" selection-start-line="19" selection-start-column="22" selection-end-line="19" selection-end-column="22" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/not_roll.py">
+    <entry file="file://$PROJECT_DIR$/spiders/lanqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret selection-end-line="3" selection-end-column="65" />
+        <state relative-caret-position="180">
+          <caret line="51" column="22" lean-forward="true" selection-start-line="51" selection-start-column="22" selection-end-line="51" selection-end-column="22" />
           <folding>
           <folding>
-            <element signature="e#0#11#0" expanded="true" />
+            <element signature="e#25#36#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/zuqiu.py">
+    <entry file="file://$PROJECT_DIR$/spiders/jieshu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
+        <state relative-caret-position="140">
+          <caret line="22" column="22" selection-start-line="22" selection-start-column="22" selection-end-line="22" selection-end-column="22" />
           <folding>
           <folding>
-            <element signature="e#0#15#0" expanded="true" />
+            <element signature="e#19#34#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/zhibo.py">
+    <entry file="file://$PROJECT_DIR$/spiders/bangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" selection-start-line="2" selection-end-line="2" />
+        <state relative-caret-position="20">
+          <caret line="20" column="22" selection-start-line="20" selection-start-column="22" selection-end-line="20" selection-end-column="22" />
           <folding>
           <folding>
-            <element signature="e#0#14#0" expanded="true" />
+            <element signature="e#24#35#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/wangqiu.py">
+    <entry file="file://$PROJECT_DIR$/items.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="20">
-          <caret line="1" selection-start-line="1" selection-end-line="1" />
-          <folding>
-            <element signature="e#0#15#0" expanded="true" />
-          </folding>
+        <state relative-caret-position="472">
+          <caret line="506" column="25" selection-start-line="506" selection-start-column="25" selection-end-line="506" selection-end-column="25" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/jieshu.py">
+    <entry file="file://$PROJECT_DIR$/spiders/guanjun.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-924">
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
-          <folding>
-            <element signature="e#0#15#0" expanded="true" />
-          </folding>
+        <state relative-caret-position="488">
+          <caret line="66" selection-start-line="66" selection-end-line="66" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/lanqiu.py">
+    <entry file="file://$PROJECT_DIR$/main_time.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
+        <state relative-caret-position="-121">
           <folding>
           <folding>
-            <element signature="e#0#15#0" expanded="true" />
+            <element signature="e#0#11#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/roll_bangqiu.py">
+    <entry file="file://$PROJECT_DIR$/log/roll_wangqiu_2019_11_11.log">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="120">
-          <caret line="6" column="14" selection-start-line="6" selection-start-column="14" selection-end-line="6" selection-end-column="14" />
+        <state relative-caret-position="-1159" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/settings.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="293">
+          <caret line="162" selection-start-line="162" selection-end-line="162" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/roll_lanqiu.py">
+    <entry file="file://$PROJECT_DIR$/main.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
+        <state relative-caret-position="300">
+          <caret line="15" column="45" selection-start-line="15" selection-start-column="45" selection-end-line="15" selection-end-column="45" />
           <folding>
           <folding>
-            <element signature="e#0#15#0" expanded="true" />
+            <element signature="e#0#10#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/roll_wangqiu.py">
+    <entry file="file://$PROJECT_DIR$/utils/LocalToken.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
         <state>
         <state>
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
-          <folding>
-            <element signature="e#0#15#0" expanded="true" />
-          </folding>
+          <caret column="48" selection-start-column="48" selection-end-column="48" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/roll_zuqiu.py">
+    <entry file="file://$PROJECT_DIR$/jianting.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" selection-start-line="2" selection-end-line="2" />
+        <state>
           <folding>
           <folding>
-            <element signature="e#18#33#0" expanded="true" />
+            <element signature="e#0#9#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/saiguo.py">
+    <entry file="file://$PROJECT_DIR$/utils/helper.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="17" selection-start-column="17" selection-end-column="17" />
+        <state relative-caret-position="302">
+          <caret line="26" column="23" selection-start-line="26" selection-start-column="23" selection-end-line="26" selection-end-column="23" />
           <folding>
           <folding>
             <element signature="e#0#14#0" expanded="true" />
             <element signature="e#0#14#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/ball_func.py">
+    <entry file="file://$PROJECT_DIR$/log/zhibo_2019_11_11.log">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="60">
-          <caret line="3" selection-start-line="3" selection-end-line="3" />
+        <state relative-caret-position="-420" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/log/saiguo2019_11_11.log">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="-3370" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/spiders/saiguo.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="300">
+          <caret line="21" column="22" selection-start-line="21" selection-start-column="22" selection-end-line="21" selection-end-column="22" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/bangqiu.py">
+    <entry file="file://$PROJECT_DIR$/spiders/roll_zuqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="20">
-          <caret line="1" selection-start-line="1" selection-end-line="1" />
+        <state relative-caret-position="400">
+          <caret line="20" selection-start-line="20" selection-end-line="21" selection-end-column="96" />
           <folding>
           <folding>
-            <element signature="e#0#15#0" expanded="true" />
+            <element signature="e#25#40#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/pipeline/guanjun.py">
+    <entry file="file://$PROJECT_DIR$/spiders/roll_wangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" selection-start-line="2" selection-end-line="2" />
+        <state relative-caret-position="276">
+          <caret line="52" column="22" selection-start-line="52" selection-start-column="22" selection-end-line="52" selection-end-column="22" />
           <folding>
           <folding>
-            <element signature="e#18#32#0" expanded="true" />
+            <element signature="e#24#39#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/bangqiu.py">
+    <entry file="file://$PROJECT_DIR$/spiders/roll_lanqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-480">
-          <caret line="3" column="11" selection-start-line="3" selection-start-column="11" selection-end-line="3" selection-end-column="11" />
+        <state relative-caret-position="472">
+          <caret line="48" column="22" selection-start-line="48" selection-start-column="22" selection-end-line="48" selection-end-column="22" />
+          <folding>
+            <element signature="e#24#39#0" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/guanjun.py">
+    <entry file="file://$PROJECT_DIR$/spiders/roll_bangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret column="23" selection-start-column="23" selection-end-column="23" />
+        <state relative-caret-position="440">
+          <caret line="22" column="22" selection-start-line="22" selection-start-column="22" selection-end-line="22" selection-end-column="22" />
           <folding>
           <folding>
-            <element signature="e#38#53#0" expanded="true" />
+            <element signature="e#46#61#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/jieshu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/guanjun.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="60">
-          <caret line="3" column="11" selection-start-line="3" selection-start-column="11" selection-end-line="3" selection-end-column="11" />
+        <state relative-caret-position="228">
+          <caret line="116" column="41" lean-forward="true" selection-start-line="116" selection-start-column="40" selection-end-line="116" selection-end-column="69" />
+          <folding>
+            <element signature="e#20#34#0" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/lanqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/jieshu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="80">
-          <caret line="4" column="11" selection-start-line="4" selection-start-column="11" selection-end-line="4" selection-end-column="11" />
+        <state relative-caret-position="188">
+          <caret line="59" column="34" lean-forward="true" selection-start-line="59" selection-start-column="32" selection-end-line="59" selection-end-column="61" />
+          <folding>
+            <element signature="e#20#35#0" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/roll_bangqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/lanqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="80">
-          <caret line="4" lean-forward="true" selection-start-line="4" selection-end-line="4" />
+        <state relative-caret-position="20">
+          <caret line="15" column="120" selection-start-line="15" selection-start-column="120" selection-end-line="15" selection-end-column="120" />
+          <folding>
+            <element signature="e#20#35#0" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/roll_lanqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/roll_bangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" column="11" selection-start-line="2" selection-start-column="11" selection-end-line="2" selection-end-column="11" />
+        <state relative-caret-position="280">
+          <caret line="14" column="106" lean-forward="true" selection-start-line="14" selection-start-column="105" selection-end-line="14" selection-end-column="120" />
+          <folding>
+            <element signature="e#20#35#0" expanded="true" />
+          </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/roll_zuqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/roll_lanqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="20">
-          <caret line="1" selection-start-line="1" selection-end-line="1" />
+        <state relative-caret-position="239">
+          <caret line="78" column="38" lean-forward="true" selection-start-line="78" selection-start-column="36" selection-end-line="78" selection-end-column="67" />
           <folding>
           <folding>
-            <element signature="e#38#53#0" expanded="true" />
+            <element signature="e#19#34#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/saiguo.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/roll_wangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" selection-start-line="2" selection-end-line="2" />
+        <state relative-caret-position="504">
+          <caret line="233" selection-start-line="233" selection-end-line="233" />
           <folding>
           <folding>
-            <element signature="e#0#15#0" expanded="true" />
+            <element signature="e#20#35#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/wangqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/roll_zuqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="20">
-          <caret line="1" selection-start-line="1" selection-end-line="1" />
+        <state relative-caret-position="80">
+          <caret line="67" column="37" lean-forward="true" selection-start-line="67" selection-start-column="36" selection-end-line="67" selection-end-column="67" />
           <folding>
           <folding>
-            <element signature="e#48#59#0" expanded="true" />
+            <element signature="e#20#35#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/zhibo.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/saiguo.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="40">
-          <caret line="2" selection-start-line="2" selection-end-line="2" />
+        <state relative-caret-position="300">
+          <caret line="15" column="120" selection-start-line="15" selection-start-column="120" selection-end-line="15" selection-end-column="120" />
           <folding>
           <folding>
-            <element signature="e#38#53#0" expanded="true" />
+            <element signature="e#19#33#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/zuqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/wangqiu.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state>
-          <caret line="12" selection-start-line="12" selection-end-line="12" />
+        <state relative-caret-position="120">
+          <caret line="16" column="120" selection-start-line="16" selection-start-column="120" selection-end-line="16" selection-end-column="120" />
           <folding>
           <folding>
-            <element signature="e#24#35#0" expanded="true" />
+            <element signature="e#20#35#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="file://$PROJECT_DIR$/spiders/roll_wangqiu.py">
+    <entry file="file://$PROJECT_DIR$/pipeline/zhibo.py">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="5680">
-          <caret line="323" column="31" selection-start-line="323" selection-start-column="26" selection-end-line="323" selection-end-column="31" />
+        <state relative-caret-position="320">
+          <caret line="16" column="120" selection-start-line="16" selection-start-column="120" selection-end-line="16" selection-end-column="120" />
           <folding>
           <folding>
-            <element signature="e#24#39#0" expanded="true" />
+            <element signature="e#20#34#0" expanded="true" />
           </folding>
           </folding>
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
+    <entry file="file://$PROJECT_DIR$/pipeline/zuqiu.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="1500">
+          <caret line="75" column="51" lean-forward="true" selection-start-line="75" selection-start-column="36" selection-end-line="75" selection-end-column="67" />
+          <folding>
+            <element signature="e#18#33#0" expanded="true" />
+          </folding>
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/pipeline/bangqiu.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="-3958">
+          <caret line="11" selection-start-line="11" selection-end-line="11" />
+        </state>
+      </provider>
+    </entry>
   </component>
   </component>
 </project>
 </project>

+ 0 - 50
hg3535/change.py

@@ -1,50 +0,0 @@
-import time
-# from venv import logger
-import redis
-from utils.helper import Helper
-from settings import R_HOST, R_PASSWORD, R_POST, R_DB, MATCH_STATUS
-
-
-def get_redis(k):
-    rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
-    ids = rls.hgetall(k)
-    return ids
-
-
-def Change_status(ids):
-    if ids:
-        for id, up_time in ids.items():
-            match_id = id.decode()
-            up_time = up_time.decode().split('&')
-            last_time = float(up_time[0])
-            game_code = up_time[1]
-            new_time = time.time() - last_time
-            if new_time > 900:
-                status_dict = {"game_code": game_code, "title": "match_status", "source": "hg3535"}
-                data_list = []
-                data = {'match_id': match_id, 'status': 2, "is_rollball": 0, "is_today": 0, "is_morningplate": 0,
-                        "is_stringscene": 0, "is_horn": 0}
-                data_list.append(data)
-                status_dict['data'] = data_list
-                res = Helper.async_post(MATCH_STATUS, status_dict)
-                if res:
-                    if "成功" in res:
-                        # self.db.match_status35.insert(status_dict)
-                        print('{},赛事结果状态交成功, {}'.format(game_code, res))
-                        print(status_dict)
-                    else:
-                        print('{},赛事结果状态交失败, {}'.format(game_code, res))
-                        print(status_dict)
-                else:
-                    print('{},赛事结果状态接口异常提交失败, {}'.format(game_code, res))
-                    print(status_dict)
-            else:
-                print('15分钟内, 暂无球类赛事结束或取消')
-
-
-if __name__ == '__main__':
-    while True:
-        ids = get_redis('hg3535.ball.ids')
-        Change_status(ids)
-        print('*****-------球类更新状态, 运行结束--------*****')
-        time.sleep(30)

+ 0 - 45
hg3535/jianting.py

@@ -1,45 +0,0 @@
-import os
-import glob
-
-
-def search_file(file_path, file):
-    # file_path指定路径, file指定文件名
-    path = file_path
-    file_list = []
-    for root, dirs, files in os.walk(path):
-        file_pattern = os.path.join(root, file)
-        for f in glob.glob(file_pattern):
-            file_list.append(f)
-    return file_list
-
-
-def into(f):
-    pass
-    # with open(f, 'wb') as i:
-    #     pass
-        # f = str.encode(f)
-        # i.write(f)
-
-
-def func(file_list):
-    if not file_list:
-        print("没有这个文件")
-    else:
-        print("一共找出 %d 个文件" % len(file_list))
-        print("找出的文件如下: ")
-        for f in file_list:
-            print(f)
-            into(f)
-            # with open(f, 'wb') as i:
-            #     f = str.encode(f)
-            #     i.write(f)
-
-    print('查找文件结束')
-
-
-
-if __name__ == '__main__':
-    file_path = r'C:\Users\admin\Desktop\newscore'
-    file = 'id_json.txt'
-    file_list = search_file(file_path, file)
-    func(file_list)

+ 2 - 2
hg3535/main.py

@@ -11,8 +11,8 @@ sys.path.append(os.path.dirname(os.path.abspath(__file__)))
 # execute(["scrapy", "crawl", "wqbodan"])
 # execute(["scrapy", "crawl", "wqbodan"])
 # execute(["scrapy", "crawl", "bangqiu"])
 # execute(["scrapy", "crawl", "bangqiu"])
 # execute(["scrapy", "crawl", "roll_zuqiu"]) # 滚球足球 回来要解开这个注释 其他全部解封
 # execute(["scrapy", "crawl", "roll_zuqiu"]) # 滚球足球 回来要解开这个注释 其他全部解封
-execute(["scrapy", "crawl", "roll_lanqiu"]) #滚球篮球
-# execute(["scrapy", "crawl", "roll_wangqiu"]) #滚球网球
+# execute(["scrapy", "crawl", "roll_lanqiu"]) #滚球篮球
+execute(["scrapy", "crawl", "roll_wangqiu"]) #滚球网球
 # execute(["scrapy", "crawl", "roll_bangqiu"])  # 滚球棒球
 # execute(["scrapy", "crawl", "roll_bangqiu"])  # 滚球棒球
 # execute(["scrapy", "crawl", "saiguo"]) #滚球id结束时间更新状态
 # execute(["scrapy", "crawl", "saiguo"]) #滚球id结束时间更新状态
 # execute(["scrapy", "crawl", "jieshu"]) #滚球id结束时间更新状态
 # execute(["scrapy", "crawl", "jieshu"]) #滚球id结束时间更新状态

+ 0 - 47
hg3535/main_time.py

@@ -1,47 +0,0 @@
-import time
-import os
-
-import sys
-
-
-# print(sys.argv[1])
-
-can = sys.argv[1]
-# tag = sys.argv[2]
-# print(type(can))
-
-if can == 'roll':
-    while True:
-        os.system("scrapy crawl roll_zuqiu")
-        time.sleep(2)
-        # os.system("scrapy crawl zq_jieshu")
-        # time.sleep(2)
-        os.system("scrapy crawl roll_lanqiu")
-        time.sleep(2)
-        # os.system("scrapy crawl lq_jieshu")
-        # time.sleep(2)
-        os.system("scrapy crawl roll_wangqiu")
-        time.sleep(2)
-        # os.system("scrapy crawl wq_jieshu")
-        # time.sleep(2)
-        os.system("scrapy crawl roll_bangqiu")
-        # time.sleep(2)
-        # os.system("scrapy crawl bq_jieshu")
-        time.sleep(120)
-
-if can == 'notroll':
-    while True:
-        os.system("scrapy crawl zuqiu")
-        time.sleep(4)
-        os.system("scrapy crawl wqbodan")
-        time.sleep(4)
-        os.system("scrapy crawl wangqiu")
-        time.sleep(4)
-        os.system("scrapy crawl lanqiu")
-        time.sleep(4)
-        os.system("scrapy crawl liansai")
-        time.sleep(4)
-        os.system("scrapy crawl guanjun")
-        time.sleep(4)
-        os.system("scrapy crawl bangqiu")
-        time.sleep(300)

+ 0 - 28
hg3535/not_roll.py

@@ -1,28 +0,0 @@
-import time
-import os
-# from subprocess import Popen
-from apscheduler.schedulers.background import BackgroundScheduler
-# pip install apscheduler
-
-
-def notroll():
-    os.system("scrapy crawl liansai")
-    os.system("scrapy crawl zuqiu")
-    os.system("scrapy crawl wqbodan")
-    os.system("scrapy crawl wangqiu")
-    os.system("scrapy crawl lanqiu")
-    os.system("scrapy crawl guanjun")
-    os.system("scrapy crawl bangqiu")
-
-
-if __name__ == "__main__":
-    scheduler = BackgroundScheduler()
-    # 每20分钟执行一次
-    scheduler.add_job(notroll, 'cron', minute="*/10")
-    scheduler.start()
-    print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))
-    try:
-        while True:
-            time.sleep(2)
-    except (KeyboardInterrupt, SystemExit):
-        scheduler.shutdown()

+ 12 - 81
hg3535/pipeline/bangqiu.py

@@ -9,7 +9,7 @@ import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 from .ball_func import new_time
 from .ball_func import new_time
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Bangqiupipeline(object):
 class Bangqiupipeline(object):
@@ -30,7 +30,6 @@ class Bangqiupipeline(object):
     def _do_calculation(self, item, out):
     def _do_calculation(self, item, out):
     # def process_item(self, item, spider):
     # def process_item(self, item, spider):
         logger = logging.getLogger(__name__)
         logger = logging.getLogger(__name__)
-        # logger.warning(query.addErrback(self.handle_error, item, spider))
         # 联赛id
         # 联赛id
         league_id = item['league_id']
         league_id = item['league_id']
         # 联赛名
         # 联赛名
@@ -63,18 +62,8 @@ class Bangqiupipeline(object):
         time_game = str(item['time_game'])
         time_game = str(item['time_game'])
         # 比赛时间,时间戳
         # 比赛时间,时间戳
         ctime = str(datetime.datetime.now().year) + "-" + month + "-" + day + " " + time_game + ":00"
         ctime = str(datetime.datetime.now().year) + "-" + month + "-" + day + " " + time_game + ":00"
-        # us_date = "{}-{}-{}".format(datetime.datetime.now().year, month, day)
         # 现在时间,时间戳
         # 现在时间,时间戳
         utime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
         utime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
-        # expire_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time() + 60))
-        # # 队1分数
-        # score_home = item['score_home']
-        # # 队2分数
-        # score_guest = item['score_guest']
-        # # 第几节
-        # jijie = item['jijie']
-        # # 球队得分
-        # qiudui = item['qiudui']
         pt = str(item['pt'])
         pt = str(item['pt'])
         # 让球
         # 让球
         concedes_dict = item['concedes_dict']
         concedes_dict = item['concedes_dict']
@@ -87,21 +76,6 @@ class Bangqiupipeline(object):
         # 总得分单双
         # 总得分单双
         odd_evens_dict = item['odd_evens_dict']
         odd_evens_dict = item['odd_evens_dict']
         odd_evens_dict_rule = item['odd_evens_dict_rule']
         odd_evens_dict_rule = item['odd_evens_dict_rule']
-        # # 球队得分 主队
-        # try:
-        #     team_score_home_dict = item['team_score_home_dict']
-        #     team_score_home_rule_dict = item['team_score_home_rule_dict']
-        # except:
-        #     team_score_home_dict = ""
-        #     team_score_home_rule_dict = ""
-        # # 球队得分 客队
-        # try:
-        #     team_score_guest_dict = item['team_score_guest_dict']
-        #     team_score_guest_rule_dict = item['team_score_guest_rule_dict']
-        # except:
-        #     team_score_guest_dict = ""
-        #     team_score_guest_rule_dict = ""
-        # bangqiu = item['bangqiu']
         match_date, match_time, time3 = new_time(ctime)
         match_date, match_time, time3 = new_time(ctime)
         us_time = ctime
         us_time = ctime
         uuid = Helper.genearte_uuid(league_name)
         uuid = Helper.genearte_uuid(league_name)
@@ -116,17 +90,15 @@ class Bangqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.bq_league35.insert(league_data)
                     self.db.bq_league35.insert(league_data)
                     logger.info('棒球联赛提交成功, {}'.format(res))
                     logger.info('棒球联赛提交成功, {}'.format(res))
                 else:
                 else:
-                    logger.warning('棒球联赛提交失败, {}'.format(res))
-                    # logger.warning(league_dict)
+                    logger.warning('棒球联赛提交失败, {}, {}'.format(res, league_dict))
             else:
             else:
-                logger.warning('棒球滚球联赛,接口异常,提交失败, {}'.format(res))
-                # logger.warning(league_dict)
+                logger.warning('棒球滚球联赛,接口异常,提交失败, {}, {}'.format(res, league_dict))
         else:
         else:
             logger.info('棒球滚球联赛, 已存在不提交')
             logger.info('棒球滚球联赛, 已存在不提交')
 
 
@@ -161,19 +133,15 @@ class Bangqiupipeline(object):
             match_data = dict(zip(match_key, match_value))
             match_data = dict(zip(match_key, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.bq_competition35.insert(match_data)
                     self.db.bq_competition35.insert(match_data)
-                    # self.db.bq_competition35.update({"match_id": match_id, pt_status: 1}, {'$set': match_data},
-                    #                                 upsert=True)
-                    logger.info('棒球赛事提交成功, {}'.format(res))
+                    logger.info('棒球赛事提交成功, {}, {}'.format(res, match_data))
                 else:
                 else:
-                    logger.warning('棒球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_data)
+                    logger.warning('棒球赛事提交失败, {}, {}'.format(res, match_data))
             else:
             else:
-                logger.warning('棒球赛事接口异常, 提交失败, {}'.format(res))
-                # logger.warning(match_data)
+                logger.warning('棒球赛事接口异常, 提交失败, {}, {}'.format(res, match_data))
         else:
         else:
             logger.info("棒球赛事已存在,不做修改")
             logger.info("棒球赛事已存在,不做修改")
 
 
@@ -210,40 +178,6 @@ class Bangqiupipeline(object):
                                          odds_only, sole, 'hg3535', '0', '']
                                          odds_only, sole, 'hg3535', '0', '']
                 total_size_dict_data = dict(zip(total_size_dict_key, total_size_dict_value))
                 total_size_dict_data = dict(zip(total_size_dict_key, total_size_dict_value))
                 data_list.append(total_size_dict_data)
                 data_list.append(total_size_dict_data)
-        # 球队得分大/小 主队
-        # if team_score_home_dict:
-        #     for key, value in team_score_home_dict.items():
-        #         sole_str = 'team_score_home' + str(key) + str(match_id) + 'hg3535'
-        #         sole = Helper.genearte_MD5(sole_str)
-        #         odds_str = 'team_score_home' + str(key) + str(match_id) + 'hg3535' + str(
-        #             team_score_home_rule_dict[key]) + str(value)
-        #         odds_only = Helper.genearte_MD5(odds_str)
-        #         condition = fuhao(str(team_score_home_rule_dict[key]))
-        #         team_score_home_dict_key = ["match_id", "lg_id", "odds_code", "status", "sort", "p_code", "odds",
-        #                                     "condition", "odds_only", "sole", "source", "type", "team"]
-        #         team_score_home_dict_value = [match_id, league_id, key, '0', '0', 'team_score_home', value, condition,
-        #                                       odds_only, sole, 'hg3535', '0', '']
-        #         team_score_home_dict_data = dict(zip(team_score_home_dict_key, team_score_home_dict_value))
-        #         odds_onlys.append(odds_only)
-        #         if odds_only not in odds_only_list:
-        #             data_list.append(team_score_home_dict_data)
-        # # 球队得分大/小 客队
-        # if team_score_guest_dict:
-        #     for key, value in team_score_guest_dict.items():
-        #         sole_str = 'team_score_guest' + str(key) + str(match_id) + 'hg3535'
-        #         sole = Helper.genearte_MD5(sole_str)
-        #         odds_str = 'team_score_guest' + str(key) + str(match_id) + 'hg3535' + str(
-        #             team_score_guest_rule_dict[key]) + str(value)
-        #         odds_only = Helper.genearte_MD5(odds_str)
-        #         condition = fuhao(str(team_score_guest_rule_dict[key]))
-        #         team_score_guest_dict_key = ["match_id", "lg_id", "odds_code", "status", "sort", "p_code", "odds",
-        #                                      "condition", "odds_only", "sole", "source", "type", "team"]
-        #         team_score_guest_dict_value = [match_id, league_id, key, '0', '0', 'team_score_guest', value, condition,
-        #                                        odds_only, sole, 'hg3535', '0', '']
-        #         team_score_guest_dict_data = dict(zip(team_score_guest_dict_key, team_score_guest_dict_value))
-        #         odds_onlys.append(odds_only)
-        #         if odds_only not in odds_only_list:
-        #             data_list.append(team_score_guest_dict_data)
         # 独赢
         # 独赢
         if capots_dict:
         if capots_dict:
             for key, value in capots_dict.items():
             for key, value in capots_dict.items():
@@ -284,17 +218,14 @@ class Bangqiupipeline(object):
                       ris_stringscene, utime, pt, match_identity]
                       ris_stringscene, utime, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
-                    logger.info('棒球赔率提交成功, {}'.format(res))
-                    # logger.info(odds_dict)
+                    logger.info('棒球赔率提交成功, {}, {}'.format(res, odds_dict))
                 else:
                 else:
-                    logger.warning('棒球赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning('棒球赔率提交失败, {}, {}'.format(res, odds_dict))
             else:
             else:
-                logger.warning('棒球详细接口赔率,接口异常, 提交失败')
-                # logger.warning(odds_dict)
+                logger.warning('棒球详细接口赔率,接口异常, 提交失败, {}'.format(odds_dict))
         else:
         else:
             logger.info('棒球详细赔率列表为空, 不提交')
             logger.info('棒球详细赔率列表为空, 不提交')
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 8 - 20
hg3535/pipeline/guanjun.py

@@ -8,7 +8,7 @@ import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 
 
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDSCH
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDSCH, POST_URL
 
 
 
 
 class Guanjunpipeline(object):
 class Guanjunpipeline(object):
@@ -69,7 +69,6 @@ class Guanjunpipeline(object):
             payload_key = ['game_code', 'title', 'lg_id', 'source']
             payload_key = ['game_code', 'title', 'lg_id', 'source']
             payload_value = [game_code, 'league', league_id, 'hg3535']
             payload_value = [game_code, 'league', league_id, 'hg3535']
             l_payload = dict(zip(payload_key, payload_value))
             l_payload = dict(zip(payload_key, payload_value))
-
             league_key = ['name_chinese', 'kind', 'match_mode', 'if_stop', 'identity', 'belong', 'last_time',
             league_key = ['name_chinese', 'kind', 'match_mode', 'if_stop', 'identity', 'belong', 'last_time',
                           'lg_id', 'source', 'uuid']
                           'lg_id', 'source', 'uuid']
             league_value = [new_league_name, '0', '0', '0', uuid, '0', time3, league_id, 'hg3535', uuid]
             league_value = [new_league_name, '0', '0', '0', uuid, '0', time3, league_id, 'hg3535', uuid]
@@ -77,23 +76,17 @@ class Guanjunpipeline(object):
             league_list.append(league_dict)
             league_list.append(league_dict)
             l_payload['data'] = league_list
             l_payload['data'] = league_list
             try:
             try:
-                res = Helper.async_post(LEAGUE_URL, l_payload)
+                res = Helper.async_post('{}/setLeague'.format(POST_URL), l_payload)
                 if res:
                 if res:
                     if res.get('status') == 1:
                     if res.get('status') == 1:
                         logger.info('{}, {}冠军联赛, 提交成功, {}'.format(game_code, league_name, res))
                         logger.info('{}, {}冠军联赛, 提交成功, {}'.format(game_code, league_name, res))
-                        # logger.info(league_list)
                         self.db[league_table].insert(league_dict)
                         self.db[league_table].insert(league_dict)
-                        # self.db[league_table].update({'lg_id': league_id}, {'$set': league_dict},
-                        #                                 upsert=True)
                     else:
                     else:
-                        logger.warning('{}, {}, 冠军联赛, 提交失败, {}'.format(game_code, league_name, res))
-                        # logger.warning(l_payload)
+                        logger.warning('{}, {}, 冠军联赛, 提交失败, {}, {}'.format(game_code, league_name, res, l_payload))
                 else:
                 else:
-                    logger.warning('{}, {}, 冠军联赛, 接口异常, 提交失败, {}'.format(game_code, league_name, res))
-                    # logger.warning(l_payload)
+                    logger.warning('{}, {}, 冠军联赛, 接口异常, 提交失败, {}, {}'.format(game_code, league_name, res, l_payload))
             except Exception as e:
             except Exception as e:
                 logger.warning('冠军联赛接口异常, 提交失败, {}'.format(e))
                 logger.warning('冠军联赛接口异常, 提交失败, {}'.format(e))
-                # logger.warning(e)
         else:
         else:
             logging.info('{},冠军联赛数据已存在'.format(league_name))
             logging.info('{},冠军联赛数据已存在'.format(league_name))
         payload_key1 = ['game_code', 'title', 'source', 'lg_id', 'uuid']
         payload_key1 = ['game_code', 'title', 'source', 'lg_id', 'uuid']
@@ -111,7 +104,6 @@ class Guanjunpipeline(object):
                 sole = Helper.genearte_MD5(mn + str(league_id) + league_name + new_league_name + tema, 0)
                 sole = Helper.genearte_MD5(mn + str(league_id) + league_name + new_league_name + tema, 0)
                 odds_only = Helper.genearte_MD5(
                 odds_only = Helper.genearte_MD5(
                     mn + str(league_id) + league_name + new_league_name + str(odd) + tema, 0)
                     mn + str(league_id) + league_name + new_league_name + str(odd) + tema, 0)
-                # if self.db[odds_table].find({'odds_only': odds_only}).count() < 1:
                 data_key = ['match_id', 'lg_id', 'odds_code', 'status', 'sort', 'p_code', 'odds',
                 data_key = ['match_id', 'lg_id', 'odds_code', 'status', 'sort', 'p_code', 'odds',
                             'condition', 'odds_only', 'sole', 'source', 'type', 'team', 'uuid']
                             'condition', 'odds_only', 'sole', 'source', 'type', 'team', 'uuid']
                 data_value = [set_id, league_id, mn, '0', '0', new_league_name, odd, '0', odds_only,
                 data_value = [set_id, league_id, mn, '0', '0', new_league_name, odd, '0', odds_only,
@@ -122,21 +114,17 @@ class Guanjunpipeline(object):
             chain_dict['data'] = data_list
             chain_dict['data'] = data_list
             chain_dict['odds_only'] = only_list
             chain_dict['odds_only'] = only_list
             try:
             try:
-                res = Helper.async_post(ODDSCH, chain_dict)
+                res = Helper.async_post('{}/setOdds'.format(POST_URL), chain_dict)
                 if res:
                 if res:
                     if res.get('status') == 1:
                     if res.get('status') == 1:
                         logger.info('{}冠军赔率,提交成功, {}'.format(game_code, res))
                         logger.info('{}冠军赔率,提交成功, {}'.format(game_code, res))
-                        # logger.info(chain_dict)
                         self.db[odds_table].insert(chain_data)
                         self.db[odds_table].insert(chain_data)
                     else:
                     else:
-                        logger.warning('{}, 冠军赔率接口, 提交失败, {}'.format(game_code, res))
-                        # logger.warning(chain_dict)
+                        logger.warning('{}, 冠军赔率接口, 提交失败, {}, {}'.format(game_code, res, chain_dict))
                 else:
                 else:
-                    logger.warning('{}, 冠军赔率接口, 接口异常, 提交失败, {}'.format(game_code, res))
-                    # logger.warning(chain_dict)
+                    logger.warning('{}, 冠军赔率接口, 接口异常, 提交失败, {}, {}'.format(game_code, res, chain_dict))
             except Exception as e:
             except Exception as e:
-                logger.warning('冠军赔率接口异常,提交失败,{}'.format(e))
-                # logger.warning(e)
+                logger.warning('冠军赔率接口异常,提交失败,{}, {}'.format(e, chain_dict))
 
 
         else:
         else:
             logger.info('足球冠军赔率, 列表为空, 不提交过')
             logger.info('足球冠军赔率, 列表为空, 不提交过')

+ 5 - 10
hg3535/pipeline/jieshu.py

@@ -7,7 +7,7 @@ import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 import redis
 import redis
 
 
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, MATCH_STATUS
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 from ..settings import R_HOST, R_PASSWORD, R_POST, R_DB
 from ..settings import R_HOST, R_PASSWORD, R_POST, R_DB
 
 
@@ -16,7 +16,7 @@ from ..settings import R_HOST, R_PASSWORD, R_POST, R_DB
 class Jieshuqiupipeline(object):
 class Jieshuqiupipeline(object):
 
 
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
         self.rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
         self.rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 
@@ -51,26 +51,21 @@ class Jieshuqiupipeline(object):
         status_dict = {"game_code": game_code, "title": "match_status", "source": "hg3535"}
         status_dict = {"game_code": game_code, "title": "match_status", "source": "hg3535"}
         update = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
         update = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
         data_list = []
         data_list = []
-        # us_time = '{}-{}-{}'.format(datetime.datetime.now().year, month, day)
         match_identity = Helper.genearte_uuid(home + away + date)
         match_identity = Helper.genearte_uuid(home + away + date)
         data = {'match_id': match_id, 'status': ostatus, "is_rollball": 0, "is_today": 0, "is_morningplate": 0,
         data = {'match_id': match_id, 'status': ostatus, "is_rollball": 0, "is_today": 0, "is_morningplate": 0,
                 "is_stringscene": 0, "is_horn": 0, 'game_code': game_code, 'update': update,
                 "is_stringscene": 0, "is_horn": 0, 'game_code': game_code, 'update': update,
                 "match_identity": match_identity}
                 "match_identity": match_identity}
         data_list.append(data)
         data_list.append(data)
         status_dict['data'] = data_list
         status_dict['data'] = data_list
-        res = Helper.async_post(MATCH_STATUS, status_dict)
+        res = Helper.async_post('{}/upMatch'.format(POST_URL), status_dict)
         if res:
         if res:
             if res.get('status') == 1:
             if res.get('status') == 1:
                 self.db.match_status35.insert(data)
                 self.db.match_status35.insert(data)
                 if ostatus == 2:
                 if ostatus == 2:
                     self.rls.hdel('hg3535.GunQiu.ids', match_id)
                     self.rls.hdel('hg3535.GunQiu.ids', match_id)
                 logger.info('{},赛事结果状态交成功, {}'.format(game_code, res))
                 logger.info('{},赛事结果状态交成功, {}'.format(game_code, res))
-                # logger.info(status_dict)
-                print(status_dict)
             else:
             else:
-                logger.warning('{},赛事结果状态交失败, {}'.format(game_code, res))
-                # logger.warning(status_dict)
+                logger.warning('{},赛事结果状态交失败, {}, {}'.format(game_code, res, status_dict))
         else:
         else:
-            logger.warning('{},赛事结果状态接口异常提交失败, {}'.format(game_code, res))
-            # logger.warning(status_dict)
+            logger.warning('{},赛事结果状态接口异常提交失败, {}, {}'.format(game_code, res, status_dict))
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 11 - 18
hg3535/pipeline/lanqiu.py

@@ -8,12 +8,12 @@ import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 from .ball_func import new_time
 from .ball_func import new_time
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Lanqiupipeline(object):
 class Lanqiupipeline(object):
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -89,18 +89,15 @@ class Lanqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球联赛提交成功, {}'.format(res))
                     logger.info('篮球联赛提交成功, {}'.format(res))
                     self.db.lq_league35.insert(league_data)
                     self.db.lq_league35.insert(league_data)
-                    # self.db.lq_league35.update({'lg_id': league_id}, {'$set': league_data}, upsert=True)
-                    # logger.info(league_dict)
                 else:
                 else:
-                    logger.warning('篮球联赛提交失败, {}'.format(res))
+                    logger.warning('篮球联赛提交失败, {}, {}'.format(res, league_dict))
             else:
             else:
-                logger.warning('篮球联赛接口, 提交失败, {}'.format(res))
-                logger.warning(league_dict)
+                logger.warning('篮球联赛接口, 提交失败, {}, {}'.format(res, league_dict))
         else:
         else:
             logger.info('篮球联赛已存在')
             logger.info('篮球联赛已存在')
 
 
@@ -134,19 +131,15 @@ class Lanqiupipeline(object):
             match_data = dict(zip(match_kay, match_value))
             match_data = dict(zip(match_kay, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球赛事提交成功, {}'.format(res))
                     logger.info('篮球赛事提交成功, {}'.format(res))
                     self.db.lq_competition35.insert(match_data)
                     self.db.lq_competition35.insert(match_data)
-                    # self.db.lq_competition35.update({'match_id': match_id, pt_status: 1}, {'$set': match_data}, upsert=True)
-                    # logger.info(match_dict)
                 else:
                 else:
-                    logger.warning('篮球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_dict)
+                    logger.warning('篮球赛事提交失败, {}, {}'.format(res, match_dict))
             else:
             else:
-                logger.warning('篮球赛事接口异常,提交失败, {}'.format(res))
-                # logger.warning(match_dict)
+                logger.warning('篮球赛事接口异常,提交失败, {}, {}'.format(res, match_dict))
         else:
         else:
             logger.info('篮球赛事已存在')
             logger.info('篮球赛事已存在')
 
 
@@ -268,16 +261,16 @@ class Lanqiupipeline(object):
                       ris_stringscene, utime, pt, match_identity]
                       ris_stringscene, utime, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球详细赔率提交成功, {}'.format(res))
                     logger.info('篮球详细赔率提交成功, {}'.format(res))
                     # logger.info(odds_dict)
                     # logger.info(odds_dict)
                 else:
                 else:
-                    logger.warning('篮球详细赔率提交成功, {}'.format(res))
+                    logger.warning('篮球详细赔率提交成功, {}, {}'.format(res, odds_dict))
                     # logger.warning(odds_dict)
                     # logger.warning(odds_dict)
             else:
             else:
-                logger.warning('篮球详细赔率接口异常, 提交成功, {}'.format(res))
+                logger.warning('篮球详细赔率接口异常, 提交成功, {}, {}'.format(res, odds_dict))
                 # logger.warning(odds_dict)
                 # logger.warning(odds_dict)
         else:
         else:
             logger.info('详细赔率列表为空')
             logger.info('详细赔率列表为空')

+ 13 - 27
hg3535/pipeline/roll_bangqiu.py

@@ -7,7 +7,7 @@ import time
 import logging
 import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL, MATCH_RESULT
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Roll_Banqiupipeline(object):
 class Roll_Banqiupipeline(object):
@@ -78,19 +78,15 @@ class Roll_Banqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.bq_league35.insert(league_data)
                     self.db.bq_league35.insert(league_data)
-                    # self.db.bq_competition35.update({'lg_id': league_id}, {'$set': league_data},
-                    #                                 upsert=True)
                     logger.info('棒球滚球联赛提交成功, {}'.format(res))
                     logger.info('棒球滚球联赛提交成功, {}'.format(res))
                 else:
                 else:
-                    logger.warning('棒球滚球联赛提交失败, {}'.format(res))
-                    # logger.warning(league_dict)
+                    logger.warning('棒球滚球联赛提交失败, {}, {}'.format(res, league_dict))
             else:
             else:
-                logger.warning('棒球滚球联赛,接口异常,提交失败, {}'.format(res))
-                # logger.warning(league_dict)
+                logger.warning('棒球滚球联赛,接口异常,提交失败, {}, {}'.format(res, league_dict))
         else:
         else:
             logger.info('棒球滚球联赛, 已存在不提交')
             logger.info('棒球滚球联赛, 已存在不提交')
         """赛事"""
         """赛事"""
@@ -106,18 +102,14 @@ class Roll_Banqiupipeline(object):
             match_data = dict(zip(match_key, match_value))
             match_data = dict(zip(match_key, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.bq_competition35.insert(match_data)
                     self.db.bq_competition35.insert(match_data)
-                    # self.db.bq_competition35.update({"match_id": match_id, 'is_rollball': 1}, {'$set': match_data},
-                    #                                 upsert=True)
                 else:
                 else:
-                    logger.warning('棒球滚球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_data)
+                    logger.warning('棒球滚球赛事提交失败, {}, {}'.format(res, match_data))
             else:
             else:
-                logger.warning('棒球滚球赛事,接口异常,提交失败, {}'.format(res))
-                # logger.warning(match_data)
+                logger.warning('棒球滚球赛事,接口异常,提交失败, {}, {}'.format(res, match_data))
         else:
         else:
             logger.info("棒球赛事已存在,棒球赛事状态时间未改变,不做修改")
             logger.info("棒球赛事已存在,棒球赛事状态时间未改变,不做修改")
         """赔率"""
         """赔率"""
@@ -190,17 +182,14 @@ class Roll_Banqiupipeline(object):
                       0, cdate, pt, match_identity]
                       0, cdate, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('棒球滚球赔率提交成功, {}'.format(res))
                     logger.info('棒球滚球赔率提交成功, {}'.format(res))
-                    # logger.info(odds_dict)
                 else:
                 else:
-                    logger.warning('棒球滚球赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning('棒球滚球赔率提交失败, {}, {}'.format(res, odds_dict))
             else:
             else:
-                logger.warning('棒球滚球赔率接口异常,提交失败, {}'.format(res))
-                # logger.warning(odds_dict)
+                logger.warning('棒球滚球赔率接口异常,提交失败, {}, {}'.format(res, odds_dict))
         else:
         else:
             logger.info('棒球滚球详细赔率列表为空, 不提交')
             logger.info('棒球滚球详细赔率列表为空, 不提交')
         """赛事结果"""
         """赛事结果"""
@@ -223,18 +212,15 @@ class Roll_Banqiupipeline(object):
         }
         }
         if da_list:
         if da_list:
             try:
             try:
-                res = Helper.async_post(MATCH_RESULT, r_data_dict)
+                res = Helper.async_post('{}/setMatchResult'.format(POST_URL), r_data_dict)
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('棒球滚球结果记录提交成功, {}'.format(res))
                     logger.info('棒球滚球结果记录提交成功, {}'.format(res))
                     self.db.bq_match_result35.insert(bq_rball)
                     self.db.bq_match_result35.insert(bq_rball)
-                    # logger.info(r_data_dict)
                 else:
                 else:
-                    logger.warning('棒球滚球结果记录提交失败, {}'.format(res))
-                    # logger.warning(r_data_dict)
+                    logger.warning('棒球滚球结果记录提交失败, {}, {}'.format(res, r_data_dict))
 
 
             except Exception as e:
             except Exception as e:
-                logger.warning("滚球接口数据异常, 提交失败, {}".format(e))
-                # logging.warning(r_data_dict)
+                logger.warning("滚球接口数据异常, 提交失败, {}, {}".format(e, r_data_dict))
         else:
         else:
             logger.info('棒球滚球结果记录为空, 不提交')
             logger.info('棒球滚球结果记录为空, 不提交')
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 13 - 24
hg3535/pipeline/roll_lanqiu.py

@@ -8,12 +8,12 @@ import logging
 
 
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL, MATCH_RESULT
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Roll_Lanqiupipeline(object):
 class Roll_Lanqiupipeline(object):
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -76,19 +76,15 @@ class Roll_Lanqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球滚球联赛提交成功, {}'.format(res))
                     logger.info('篮球滚球联赛提交成功, {}'.format(res))
-                    # self.db.lq_league35.update({'lg_id': league_id}, {'$set': league_data},
-                    #                                 upsert=True)
                     self.db.lq_league35.insert(league_data)
                     self.db.lq_league35.insert(league_data)
-                    # logger.info(league_dict)
                 else:
                 else:
-                    logger.warning('篮球滚球联赛提交失败, {}'.format(res))
+                    logger.warning('篮球滚球联赛提交失败, {}, {}'.format(res, league_data))
             else:
             else:
-                logger.warning('篮球滚球联赛接口, 提交失败, {}'.format(res))
-                # logger.warning(league_dict)
+                logger.warning('篮球滚球联赛接口, 提交失败, {}, {}'.format(res, league_data))
         else:
         else:
             logger.info('篮球滚球联赛已存在')
             logger.info('篮球滚球联赛已存在')
         match_identity = Helper.genearte_uuid(team_home + team_guest + match_date)
         match_identity = Helper.genearte_uuid(team_home + team_guest + match_date)
@@ -103,20 +99,15 @@ class Roll_Lanqiupipeline(object):
             match_data = dict(zip(match_kay, match_value))
             match_data = dict(zip(match_kay, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球滚球赛事提交成功, {}'.format(res))
                     logger.info('篮球滚球赛事提交成功, {}'.format(res))
                     self.db.lq_competition35.insert(match_data)
                     self.db.lq_competition35.insert(match_data)
-                    # self.db.lq_competition35.update({"match_id": match_id, 'is_rollball': 1}, {'$set': match_data},
-                    #                                 upsert=True)
-                    # logger.info(match_dict)
                 else:
                 else:
-                    logger.warning('篮球滚球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_dict)
+                    logger.warning('篮球滚球赛事提交失败, {}, {}'.format(res, match_dict))
             else:
             else:
-                logger.warning('篮球滚球赛事接口异常,提交失败, {}'.format(res))
-                # logger.warning(match_dict)
+                logger.warning('篮球滚球赛事接口异常,提交失败, {}, {}'.format(res, match_dict))
         else:
         else:
             logger.info('篮球滚球赛事已存在')
             logger.info('篮球滚球赛事已存在')
 
 
@@ -242,16 +233,14 @@ class Roll_Lanqiupipeline(object):
                       0, cdate, pt, match_identity]
                       0, cdate, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                         logger.info('篮球滚球详细赔率提交成功, {}'.format(res))
                         logger.info('篮球滚球详细赔率提交成功, {}'.format(res))
                 else:
                 else:
-                    logger.warning('篮球滚球详细赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning('篮球滚球详细赔率提交失败, {}, {}'.format(res, odds_dict))
             else:
             else:
-                logger.warning('篮球滚球详细赔率接口异常, 提交失败, {}'.format(res))
-                # logger.warning(odds_dict)
+                logger.warning('篮球滚球详细赔率接口异常, 提交失败, {}, {}'.format(res, odds_dict))
         else:
         else:
             logger.info('篮球滚球详细赔率列表为空, 不提交')
             logger.info('篮球滚球详细赔率列表为空, 不提交')
         data_list = []
         data_list = []
@@ -272,12 +261,12 @@ class Roll_Lanqiupipeline(object):
         }
         }
         if data_list:
         if data_list:
             try:
             try:
-                res = Helper.async_post(MATCH_RESULT, r_data_dict)
+                res = Helper.async_post('{}/setMatchResult'.format(POST_URL), r_data_dict)
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('篮球滚球赛事结果记录提交成功, {}'.format(res))
                     logger.info('篮球滚球赛事结果记录提交成功, {}'.format(res))
                     self.db.lq_match_result35.insert(lq_rball)
                     self.db.lq_match_result35.insert(lq_rball)
                 else:
                 else:
-                    logger.warning('篮球滚球赛事结果记录提交失败, {}'.format(res))
+                    logger.warning('篮球滚球赛事结果记录提交失败, {}, {}'.format(res, r_data_dict))
                     # logger.warning(r_data_dict)
                     # logger.warning(r_data_dict)
             except Exception as e:
             except Exception as e:
                 logger.warning('篮球滚球赛事结果数据,接口异常,提交失败, {}'.format(e))
                 logger.warning('篮球滚球赛事结果数据,接口异常,提交失败, {}'.format(e))

+ 13 - 25
hg3535/pipeline/roll_wangqiu.py

@@ -6,14 +6,14 @@ import pymongo
 import time
 import time
 import logging
 import logging
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL, MATCH_RESULT
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 
 
 
 
 class Roll_Wangqiupipeline(object):
 class Roll_Wangqiupipeline(object):
     def open_spider(self, spider):
     def open_spider(self, spider):
         self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST,
         self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST,
-                                         authSource='kaiyou')
+                                         authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -91,19 +91,15 @@ class Roll_Wangqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.wq_league35.insert(league_data)
                     self.db.wq_league35.insert(league_data)
-                    # self.db.wq_league35.update({'lg_id': league_id}, {'$set': league_data},
-                    #                                 upsert=True)
                     logger.info('网球联赛提交成功, {}'.format(res))
                     logger.info('网球联赛提交成功, {}'.format(res))
                 else:
                 else:
-                    logger.warning('网球联赛提交失败, {}'.format(res))
-                    logger.warning(league_dict)
+                    logger.warning('网球联赛提交失败, {}, {}'.format(res, league_dict))
             else:
             else:
-                logger.warning('网球滚球联赛接口异常提交失败, {}'.format(res))
-                logger.warning(league_dict)
+                logger.warning('网球滚球联赛接口异常提交失败, {}, {}'.format(res, league_dict))
         else:
         else:
             logger.info('网球联赛已存在, 不提交')
             logger.info('网球联赛已存在, 不提交')
 
 
@@ -120,19 +116,15 @@ class Roll_Wangqiupipeline(object):
             match_data = dict(zip(match_key, match_value))
             match_data = dict(zip(match_key, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.wq_competition35.insert(match_data)
                     self.db.wq_competition35.insert(match_data)
-                    # self.db.wq_competition35.update({'match_id': match_id, 'is_rollball': 1}, {'$set': match_data},
-                    #                                 upsert=True)
                     logger.info('网球赛事提交成功, {}'.format(res))
                     logger.info('网球赛事提交成功, {}'.format(res))
                 else:
                 else:
-                    logger.warning('网球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_data)
+                    logger.warning('网球赛事提交失败, {}, {}'.format(res, match_data))
             else:
             else:
-                logger.warning('网球滚球赛事接口异常提交失败, {}'.format(res))
-                # logger.warning(match_data)
+                logger.warning('网球滚球赛事接口异常提交失败, {}, {}'.format(res, match_data))
         else:
         else:
             logging.info('网球赛事已存在, 不提交')
             logging.info('网球赛事已存在, 不提交')
 
 
@@ -225,17 +217,15 @@ class Roll_Wangqiupipeline(object):
                       0, cdate, pt, match_identity]
                       0, cdate, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('网球滚球赔率提交成功, {}'.format(res))
                     logger.info('网球滚球赔率提交成功, {}'.format(res))
                     # logger.info(odds_dict)
                     # logger.info(odds_dict)
                 else:
                 else:
-                    logger.warning('网球滚球赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning('网球滚球赔率提交失败, {}, {}'.format(res, odds_dict))
             else:
             else:
-                logger.warning('网球滚球赔率接口异常提交失败, {}'.format(res))
-                # logger.warning(odds_dict)
+                logger.warning('网球滚球赔率接口异常提交失败, {}, {}'.format(res, odds_dict))
         else:
         else:
             logger.info('网球滚球详细赔率列表为空, 不提交')
             logger.info('网球滚球详细赔率列表为空, 不提交')
 
 
@@ -263,14 +253,12 @@ class Roll_Wangqiupipeline(object):
         }
         }
         if da_list:
         if da_list:
             try:
             try:
-                res = Helper.async_post(MATCH_RESULT, r_data_dict)
+                res = Helper.async_post('{}/setMatchResult'.format(POST_URL), r_data_dict)
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('网球滚球结果记录提交成功, {}'.format(res))
                     logger.info('网球滚球结果记录提交成功, {}'.format(res))
                     self.db.wq_match_result35.insert(wq_rball)
                     self.db.wq_match_result35.insert(wq_rball)
-                    # logger.info(r_data_dict)
                 else:
                 else:
-                    logger.warning('网球滚球结果记录提交失败, {}'.format(res))
-                    # logger.warning(r_data_dict)
+                    logger.warning('网球滚球结果记录提交失败, {}, {}'.format(res, r_data_dict))
             except Exception as e:
             except Exception as e:
                 logger.warning("网球接口数据异常, 提交失败, {}".format(e))
                 logger.warning("网球接口数据异常, 提交失败, {}".format(e))
         else:
         else:

+ 7 - 6
hg3535/pipeline/roll_zuqiu.py

@@ -9,14 +9,14 @@ import logging
 
 
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL, MATCH_RESULT
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 # 滚球足球 插入
 # 滚球足球 插入
 class Roll_Zuqiupipeline(object):
 class Roll_Zuqiupipeline(object):
 
 
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -65,7 +65,7 @@ class Roll_Zuqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.zq_league35.insert(league_data)
                     self.db.zq_league35.insert(league_data)
@@ -91,7 +91,7 @@ class Roll_Zuqiupipeline(object):
             match_data = dict(zip(match_kay, match_value))
             match_data = dict(zip(match_kay, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.zq_competition35.insert(match_data)
                     self.db.zq_competition35.insert(match_data)
@@ -118,6 +118,7 @@ class Roll_Zuqiupipeline(object):
             hash_str = p_code + "gss_h" + str(index) + str(half_size_guest_rule[index]) + str(
             hash_str = p_code + "gss_h" + str(index) + str(half_size_guest_rule[index]) + str(
                 value) + "hg3535" + str(match_id)
                 value) + "hg3535" + str(match_id)
             sole_str = p_code + "gss_h" + str(index) + str(match_id) + "hg3535"
             sole_str = p_code + "gss_h" + str(index) + str(match_id) + "hg3535"
+            # sole_str = 'TS' + str(key) + str(game_id) + 'hg188' + '0'
             odds_only = Helper.genearte_MD5(hash_str, pt)
             odds_only = Helper.genearte_MD5(hash_str, pt)
             sole = Helper.genearte_MD5(sole_str, pt)
             sole = Helper.genearte_MD5(sole_str, pt)
             half_size_guest_key = ["match_id", "lg_id", "odds_code", "status", "sort", "p_code", "odds", "condition",
             half_size_guest_key = ["match_id", "lg_id", "odds_code", "status", "sort", "p_code", "odds", "condition",
@@ -533,7 +534,7 @@ class Roll_Zuqiupipeline(object):
                       0, cdate, pt, match_identity]
                       0, cdate, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('足球滚球详细赔率提交成功, {}'.format(res))
                     logger.info('足球滚球详细赔率提交成功, {}'.format(res))
@@ -564,7 +565,7 @@ class Roll_Zuqiupipeline(object):
         }
         }
         if data_list:
         if data_list:
             try:
             try:
-                res = Helper.async_post(MATCH_RESULT, r_data_dict)
+                res = Helper.async_post('{}/setMatchResult'.format(POST_URL), r_data_dict)
                 if res:
                 if res:
                     if res.get('status') == 1:
                     if res.get('status') == 1:
                         logger.info('足球滚球结果记录提交成功, {}'.format(res))
                         logger.info('足球滚球结果记录提交成功, {}'.format(res))

+ 15 - 22
hg3535/pipeline/saiguo.py

@@ -5,7 +5,7 @@ import logging
 
 
 
 
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, SAIGUO_RESULT
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 
 
 
 
@@ -13,7 +13,7 @@ from ..utils.helper import Helper
 class Jieshuqiupipeline(object):
 class Jieshuqiupipeline(object):
 
 
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -43,18 +43,16 @@ class Jieshuqiupipeline(object):
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_half": h_score,
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_half": h_score,
                     "score_full": f_score, "play_data": play_data, "match_id": match_id}
                     "score_full": f_score, "play_data": play_data, "match_id": match_id}
             post_data['data'].append(data)
             post_data['data'].append(data)
-            res = Helper.async_post(SAIGUO_RESULT, post_data)
+            res = Helper.async_post('{}/setResultExpress'.format(POST_URL), post_data)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.zq_saiguo35.insert(post_data)
                     self.db.zq_saiguo35.insert(post_data)
                     logger.info('{},赛事结果状态交成功, {}'.format('zq', res))
                     logger.info('{},赛事结果状态交成功, {}'.format('zq', res))
                     # logger.info(post_data)
                     # logger.info(post_data)
                 else:
                 else:
-                    logger.warning('{},赛事结果状态交失败, {}'.format('zq', res))
-                    # logger.warning(post_data)
+                    logger.warning('{},赛事结果状态交失败, {}, {}'.format('zq', res, post_data))
             else:
             else:
-                logger.warning('{},赛事结果状态接口异常提交失败, {}'.format('zq', res))
-                # logger.warning(post_data)
+                logger.warning('{},赛事结果状态接口异常提交失败, {}, {}'.format('zq', res, post_data))
         elif pt == 2:
         elif pt == 2:
             h_score = item["score_half"]
             h_score = item["score_half"]
             f_score = item["score_result"]
             f_score = item["score_result"]
@@ -65,18 +63,16 @@ class Jieshuqiupipeline(object):
                     "guest_team": a_name, "score_half": h_score, "score_below": x_score, "score_result": f_score,
                     "guest_team": a_name, "score_half": h_score, "score_below": x_score, "score_result": f_score,
                     "play_data": play_data}
                     "play_data": play_data}
             post_data['data'].append(data)
             post_data['data'].append(data)
-            res = Helper.async_post(SAIGUO_RESULT, post_data)
+            res = Helper.async_post('{}/setResultExpress'.format(POST_URL), post_data)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.lq_saiguo35.insert(post_data)
                     self.db.lq_saiguo35.insert(post_data)
                     logger.info('{},赛事结果状态交成功, {}'.format('lq', res))
                     logger.info('{},赛事结果状态交成功, {}'.format('lq', res))
                     # logger.info(post_data)
                     # logger.info(post_data)
                 else:
                 else:
-                    logger.warning('{},赛事结果状态交失败, {}'.format('lq', res))
-                    # logger.warning(post_data)
+                    logger.warning('{},赛事结果状态交失败, {}, {}'.format('lq', res, post_data))
             else:
             else:
-                logger.warning('{},赛事结果状态接口异常提交失败, {}'.format('lq', res))
-                # logger.warning(post_data)
+                logger.warning('{},赛事结果状态接口异常提交失败, {}, {}'.format('lq', res, post_data))
         elif pt == 3:
         elif pt == 3:
             f_score = item["score_result"]
             f_score = item["score_result"]
             post_data = {'game_code': 'wq', "title": "result", "source": "hg3535", "data": []}
             post_data = {'game_code': 'wq', "title": "result", "source": "hg3535", "data": []}
@@ -84,18 +80,17 @@ class Jieshuqiupipeline(object):
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_result": f_score,
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_result": f_score,
                     "play_data": play_data, "match_id": match_id}
                     "play_data": play_data, "match_id": match_id}
             post_data['data'].append(data)
             post_data['data'].append(data)
-            res = Helper.async_post(SAIGUO_RESULT, post_data)
+            res = Helper.async_post('{}/setResultExpress'.format(POST_URL), post_data)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.wq_saiguo35.insert(post_data)
                     self.db.wq_saiguo35.insert(post_data)
                     logger.info('{},赛事结果状态交成功, {}'.format('wq', res))
                     logger.info('{},赛事结果状态交成功, {}'.format('wq', res))
                     # logger.info(post_data)
                     # logger.info(post_data)
                 else:
                 else:
-                    logger.warning('{},赛事结果状态交失败, {}'.format('wq', res))
-                    # logger.warning(post_data)
+                    logger.warning('{},赛事结果状态交失败, {}, {}'.format('wq', res, post_data))
             else:
             else:
-                logger.warning('{},赛事结果状态接口异常提交失败, {}'.format('wq', res))
-                # logger.warning(post_data)
+                logger.warning('{},赛事结果状态接口异常提交失败, {}, {}'.format('wq', res, post_data))
+
         else:
         else:
             h_score = item["score_half"]
             h_score = item["score_half"]
             f_score = item["score_full"]
             f_score = item["score_full"]
@@ -104,16 +99,14 @@ class Jieshuqiupipeline(object):
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_half": h_score,
                     "match_time": match_time, "home_team": h_name, "guest_team": a_name, "score_half": h_score,
                     "score_full": f_score, "play_data": play_data, "match_id": match_id}
                     "score_full": f_score, "play_data": play_data, "match_id": match_id}
             post_data['data'].append(data)
             post_data['data'].append(data)
-            res = Helper.async_post(SAIGUO_RESULT, post_data)
+            res = Helper.async_post('{}/setResultExpress'.format(POST_URL), post_data)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.bq_saiguo35.insert(post_data)
                     self.db.bq_saiguo35.insert(post_data)
                     logger.info('{},赛事结果状态交成功, {}'.format('bq', res))
                     logger.info('{},赛事结果状态交成功, {}'.format('bq', res))
                     # logger.info(post_data)
                     # logger.info(post_data)
                 else:
                 else:
-                    logger.warning('{},赛事结果状态交失败, {}'.format('bq', res))
-                    # logger.warning(post_data)
+                    logger.warning('{},赛事结果状态交失败, {}, {}'.format('bq', res, post_data))
             else:
             else:
-                logger.warning('{},赛事结果状态接口异常提交失败, {}'.format('bq', res))
-                # logger.warning(post_data)
+                logger.warning('{},赛事结果状态接口异常提交失败, {}, {}'.format('bq', res, post_data))
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 11 - 11
hg3535/pipeline/wangqiu.py

@@ -9,12 +9,12 @@ import logging
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 from .ball_func import new_time
 from .ball_func import new_time
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Wangqiupipeline(object):
 class Wangqiupipeline(object):
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource='kaiyou')
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -90,7 +90,7 @@ class Wangqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.wq_league35.insert(league_data)
                     self.db.wq_league35.insert(league_data)
@@ -99,10 +99,10 @@ class Wangqiupipeline(object):
                     logger.info('网球联赛提交成功, {}'.format(res))
                     logger.info('网球联赛提交成功, {}'.format(res))
                 else:
                 else:
                     logger.warning('网球联赛提交失败, {}'.format(res))
                     logger.warning('网球联赛提交失败, {}'.format(res))
-                    # logger.warning(league_dict)
+                    logger.warning(league_dict)
             else:
             else:
                 logger.warning('网球联赛接口异常,提交失败, {}'.format(res))
                 logger.warning('网球联赛接口异常,提交失败, {}'.format(res))
-                # logger.warning(league_dict)
+                logger.warning(league_dict)
         else:
         else:
             logger.info('网球联赛已存在, 不提交')
             logger.info('网球联赛已存在, 不提交')
 
 
@@ -136,17 +136,17 @@ class Wangqiupipeline(object):
             match_data = dict(zip(match_key, match_value))
             match_data = dict(zip(match_key, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.wq_competition35.insert(match_data)
                     self.db.wq_competition35.insert(match_data)
                     logger.info('网球赛事提交成功, {}'.format(res))
                     logger.info('网球赛事提交成功, {}'.format(res))
                 else:
                 else:
                     logger.warning('网球赛事提交失败, {}'.format(res))
                     logger.warning('网球赛事提交失败, {}'.format(res))
-                    # logger.warning(match_data)
+                    logger.warning(match_data)
             else:
             else:
                 logger.warning('网球赛事接口异常,提交失败, {}'.format(res))
                 logger.warning('网球赛事接口异常,提交失败, {}'.format(res))
-                # logger.warning(match_dict)
+                logger.warning(match_dict)
         else:
         else:
             logging.info('网球赛事已存在, 不提交')
             logging.info('网球赛事已存在, 不提交')
 
 
@@ -237,17 +237,17 @@ class Wangqiupipeline(object):
                       ris_stringscene, utime, pt, match_identity]
                       ris_stringscene, utime, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('网球赔率提交成功, {}'.format(res))
                     logger.info('网球赔率提交成功, {}'.format(res))
                     # logger.info(odds_dict)
                     # logger.info(odds_dict)
                 else:
                 else:
                     logger.warning('网球赔率提交失败, {}'.format(res))
                     logger.warning('网球赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning(odds_dict)
             else:
             else:
                 logger.warning('网球详细接口赔率返回异常, {}'.format(res))
                 logger.warning('网球详细接口赔率返回异常, {}'.format(res))
-                # logger.warning(odds_dict)
+                logger.warning(odds_dict)
         else:
         else:
             logger.info('网球详细赔率列表为空, 不提交')
             logger.info('网球详细赔率列表为空, 不提交')
 
 

+ 4 - 4
hg3535/pipeline/zhibo.py

@@ -7,14 +7,14 @@ import logging
 
 
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, MATCHWARN
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 # 滚球足球 插入
 # 滚球足球 插入
 class Zuqiupipeline(object):
 class Zuqiupipeline(object):
 
 
     def open_spider(self, spider):
     def open_spider(self, spider):
-        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST)
+        self.mongo = pymongo.MongoClient(host=M_HOST, username=M_USER, password=M_PASSWORD, port=M_POST, authSource=M_DB)
         self.db = self.mongo[M_DB]
         self.db = self.mongo[M_DB]
 
 
     @defer.inlineCallbacks
     @defer.inlineCallbacks
@@ -44,13 +44,13 @@ class Zuqiupipeline(object):
             warns.append(detail_dict)
             warns.append(detail_dict)
         if warns:
         if warns:
             warn_dict['data'] = warns
             warn_dict['data'] = warns
-            res = Helper.async_post(MATCHWARN, warn_dict)
+            res = Helper.async_post('{}/setMatchWarn'.format(POST_URL), warn_dict)
             if res.get('status') == 1:
             if res.get('status') == 1:
                 # print('危险球提交成功')
                 # print('危险球提交成功')
                 self.db.FT_warn35.insert(warn_dict)
                 self.db.FT_warn35.insert(warn_dict)
                 logger.info('足球直播危险球提交成功, {}'.format(res))
                 logger.info('足球直播危险球提交成功, {}'.format(res))
             else:
             else:
-                logger.warning('足球直播危险球,提交失败, {}'.format(res))
+                logger.warning('足球直播危险球,提交失败, {}, {}'.format(res, warn_dict))
         else:
         else:
             logger.info('足球直播危险球列表为空, 不提交')
             logger.info('足球直播危险球列表为空, 不提交')
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 9 - 7
hg3535/pipeline/zuqiu.py

@@ -6,7 +6,8 @@ import pymongo
 from twisted.internet import defer, reactor
 from twisted.internet import defer, reactor
 from ..utils.helper import Helper
 from ..utils.helper import Helper
 from .ball_func import new_time
 from .ball_func import new_time
-from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL
+# from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, LEAGUE_URL, ODDS_URL, MATCH_URL
+from ..settings import M_HOST, M_USER, M_PASSWORD, M_POST, M_DB, POST_URL
 
 
 
 
 class Zuqiupipeline(object):
 class Zuqiupipeline(object):
@@ -72,7 +73,7 @@ class Zuqiupipeline(object):
             league_data = dict(zip(league_key, league_value))
             league_data = dict(zip(league_key, league_value))
             league_list.append(league_data)
             league_list.append(league_data)
             league_dict['data'] = league_list
             league_dict['data'] = league_list
-            res = Helper.async_post(LEAGUE_URL, league_dict)
+            res = Helper.async_post('{}/setLeague'.format(POST_URL), league_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.zq_league35.insert(league_data)
                     self.db.zq_league35.insert(league_data)
@@ -110,16 +111,16 @@ class Zuqiupipeline(object):
             match_data = dict(zip(match_kay, match_value))
             match_data = dict(zip(match_kay, match_value))
             match_list.append(match_data)
             match_list.append(match_data)
             match_dict['data'] = match_list
             match_dict['data'] = match_list
-            res = Helper.async_post(MATCH_URL, match_dict)
+            res = Helper.async_post('{}/setMatch'.format(POST_URL), match_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     self.db.zq_competition35.insert(match_data)
                     self.db.zq_competition35.insert(match_data)
                 else:
                 else:
                     logger.warning('足球赛事表提交失败, {}'.format(res))
                     logger.warning('足球赛事表提交失败, {}'.format(res))
-                    # logger.warning(match_dict)
+                    logger.warning(match_dict)
             else:
             else:
                 logger.warning('足球赛事接口异常提交失败, {}'.format(res))
                 logger.warning('足球赛事接口异常提交失败, {}'.format(res))
-                # logger.warning(match_dict)
+                logger.warning(match_dict)
         else:
         else:
             logger.info('足球赛事已存在,不提交')
             logger.info('足球赛事已存在,不提交')
 
 
@@ -554,16 +555,17 @@ class Zuqiupipeline(object):
         odds_value = ["zq", "odds", match_id, league_id, data_list, "hg3535", odds_onlys, tag_number, uuid, ris_stringscene, utime, pt, match_identity]
         odds_value = ["zq", "odds", match_id, league_id, data_list, "hg3535", odds_onlys, tag_number, uuid, ris_stringscene, utime, pt, match_identity]
         odds_dict = dict(zip(odds_key, odds_value))
         odds_dict = dict(zip(odds_key, odds_value))
         if data_list:
         if data_list:
-            res = Helper.async_post(ODDS_URL, odds_dict)
+            res = Helper.async_post('{}/setOdds'.format(POST_URL), odds_dict)
             if res:
             if res:
                 if res.get('status') == 1:
                 if res.get('status') == 1:
                     logger.info('足球详细赔率提交成功, {}'.format(res))
                     logger.info('足球详细赔率提交成功, {}'.format(res))
                     # logger.info(odds_dict)
                     # logger.info(odds_dict)
                 else:
                 else:
                     logger.warning('足球相信赔率提交失败, {}'.format(res))
                     logger.warning('足球相信赔率提交失败, {}'.format(res))
-                    # logger.warning(odds_dict)
+                    logger.warning(odds_dict)
             else:
             else:
                 logging.warning('足球详细赔率接口异常, {}'.format(res))
                 logging.warning('足球详细赔率接口异常, {}'.format(res))
+                logger.warning(odds_dict)
         else:
         else:
             logger.info('足球详细赔率列表为空')
             logger.info('足球详细赔率列表为空')
         reactor.callFromThread(out.callback, item)
         reactor.callFromThread(out.callback, item)

+ 0 - 33
hg3535/roll.py

@@ -1,33 +0,0 @@
-import time
-import os
-import subprocess
-# import sys
-# from datetime import time
-# from subprocess import Popen
-# pip install apscheduler
-from apscheduler.schedulers.background import BackgroundScheduler
-
-
-def roll():
-    # execute("scrapy crawl roll_zuqiu")
-    os.system("scrapy crawl roll_zuqiu")
-    # os.system("scrapy crawl zq_jieshu")
-    os.system("scrapy crawl roll_lanqiu")
-    # os.system("scrapy crawl lq_jieshu")
-    os.system("scrapy crawl roll_wangqiu")
-    # os.system("scrapy crawl wq_jieshu")
-    os.system("scrapy crawl roll_bangqiu")
-    # pass
-
-
-if __name__ == "__main__":
-    scheduler = BackgroundScheduler()
-    # 每20分钟执行一次
-    scheduler.add_job(roll, 'cron', minute="*/3")
-    scheduler.start()
-    print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))
-    try:
-        while True:
-            time.sleep(2)
-    except (KeyboardInterrupt, SystemExit):
-        scheduler.shutdown()

+ 55 - 0
hg3535/run_ball.py

@@ -0,0 +1,55 @@
+import time
+import os
+
+from apscheduler.schedulers.background import BackgroundScheduler
+from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor
+
+
+def zhibo():
+    os.system("scrapy crawl zhibo")
+
+
+def roll_ball():
+    os.system("scrapy crawl roll_lanqiu")
+    os.system("scrapy crawl roll_wangqiu")
+    os.system("scrapy crawl roll_bangqiu")
+    os.system("scrapy crawl roll_zuqiu")
+    os.system("scrapy crawl jieshu")
+
+
+def ball():
+    os.system("scrapy crawl lanqiu")
+    os.system("scrapy crawl bangqiu")
+    os.system("scrapy crawl wangqiu")
+    os.system("scrapy crawl zuqiu")
+
+
+def other():
+    os.system("scrapy crawl guanjun")
+    os.system("scrapy crawl saiguo")
+
+
+def kill_ball():
+    os.system("ps -ef | grep scrapy | grep -v grep | cut -c 9-15 | xargs kill -9")
+
+
+if __name__ == "__main__":
+    executors = {
+        'default': ThreadPoolExecutor(20),
+        'processpool': ProcessPoolExecutor(5)
+    }
+    scheduler = BackgroundScheduler(executors=executors)
+    # 每20分钟执行一次
+
+    scheduler.add_job(zhibo, 'interval', seconds=5)
+    scheduler.add_job(roll_ball, 'interval', seconds=30)
+    scheduler.add_job(ball, 'interval', minutes=3)
+    scheduler.add_job(other, 'interval', minutes=30)
+    scheduler.add_job(kill_ball, 'interval', minutes=150)
+    scheduler.start()
+    print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))
+    try:
+        while True:
+            time.sleep(2)
+    except (KeyboardInterrupt, SystemExit):
+        scheduler.shutdown()

+ 23 - 32
hg3535/settings.py

@@ -120,34 +120,6 @@ CONCURRENT_ITEMS = 1000
 # SCHEDULER_PERSIST = False
 # SCHEDULER_PERSIST = False
 # LOG_FILE = './log/'
 # LOG_FILE = './log/'
 
 
-
-M_HOST = '192.168.2.200'
-# M_HOST = '127.0.0.1'
-M_POST = 27017
-M_USER = 'kaiyou'
-M_DB = 'kaiyou'
-M_PASSWORD = 'kaiyou'
-# M_PASSWORD = '123456'
-
-# LEAGUE_URL = 'http://stadmin.bocai108.com:19093/setLeague'
-LEAGUE_URL = 'http://stadmin.bocai108.com/setLeague'
-# MATCH_URL = 'http://stadmin.bocai108.com:19093/setMatch'
-MATCH_URL = 'http://stadmin.bocai108.com/setMatch'
-# ODDS_URL = 'http://stadmin.bocai108.com:19093/setOdds'
-ODDS_URL = 'http://stadmin.bocai108.com/setOdds'
-TOKEN_URL = "http://stadmin.bocai108.com/getToken"
-MATCH_RESULT = "http://stadmin.bocai108.com:19093/setMatchResult"
-MATCH_STATUS = "http://stadmin.bocai108.com:19093/upMatch"
-# MATCH_STATUS = "http://stadmin.bocai108.com/upMatch"
-ODDSCH = "http://stadmin.bocai108.com:19093/setOddsCH"
-SAIGUO_RESULT = "http://stadmin.bocai108.com:19093/setResultExpress"
-# SAIGUO_RESULT = "http://stadmin.bocai108.com/setResultExpress"
-MATCHWARN = "http://stadmin.bocai108.com:19093/setMatchWarn"
-
-R_HOST = '192.168.2.200'
-R_POST = 6379
-R_DB = 1
-R_PASSWORD = 123456
 # upMatch
 # upMatch
 # POST_HOST = 'localhost'
 # POST_HOST = 'localhost'
 # POST_DATABASE = 'kaiyou'
 # POST_DATABASE = 'kaiyou'
@@ -156,13 +128,9 @@ R_PASSWORD = 123456
 # POST_PASSWORD = '123456'
 # POST_PASSWORD = '123456'
 # SCHEDULER = "scrapy_redis.scheduler.Scheduler"
 # SCHEDULER = "scrapy_redis.scheduler.Scheduler"
 # DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"
 # DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"
-
 # SCHEDULER_SERIALIZER = "scrapy_redis.picklecompat"
 # SCHEDULER_SERIALIZER = "scrapy_redis.picklecompat"
-
 # #不要清理redis队列,允许暂停/恢复抓取。
 # #不要清理redis队列,允许暂停/恢复抓取。
-
 # SCHEDULER_PERSIST = False
 # SCHEDULER_PERSIST = False
-
 # #使用优先级队列安排请求。(默认)
 # #使用优先级队列安排请求。(默认)
 # SCHEDULER_QUEUE_CLASS = 'scrapy_redis.queue.PriorityQueue'
 # SCHEDULER_QUEUE_CLASS = 'scrapy_redis.queue.PriorityQueue'
 # REDIS_HOST = '192.168.2.200'
 # REDIS_HOST = '192.168.2.200'
@@ -179,3 +147,26 @@ R_PASSWORD = 123456
 # DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"
 # DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"
 # REDIS_URL = 'redis://:123456@192.168.2.200:6379'
 # REDIS_URL = 'redis://:123456@192.168.2.200:6379'
 # SCHEDULER_PERSIST = False
 # SCHEDULER_PERSIST = False
+
+# mongo
+M_HOST = '192.168.2.200'
+M_POST = 27017
+M_USER = 'kaiyou'
+M_DB = 'kaiyou'
+M_PASSWORD = 'kaiyou'
+
+# redis
+R_HOST = '192.168.2.200'
+R_POST = 6379
+R_DB = 1
+R_PASSWORD = 123456
+
+# token
+T_USER = 'python'
+T_PASSWORD = 'python888'
+T_URL = 'http://stadmin.bocai108.com/getToken'
+
+
+# 域名
+POST_URL = 'http://stadmin.bocai108.com:19093'
+

+ 2 - 2
hg3535/spiders/bangqiu.py

@@ -17,8 +17,8 @@ class BqrangqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             "hg3535.pipeline.bangqiu.Bangqiupipeline": 300,
             "hg3535.pipeline.bangqiu.Bangqiupipeline": 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/bangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/bangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 

+ 2 - 21
hg3535/spiders/guanjun.py

@@ -18,8 +18,8 @@ class LqguanjunSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             'hg3535.pipeline.guanjun.Guanjunpipeline': 300,
             'hg3535.pipeline.guanjun.Guanjunpipeline': 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "./log/guanjun_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/guanjun_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
 
 
     def start_requests(self):
     def start_requests(self):
@@ -64,22 +64,3 @@ class LqguanjunSpider(scrapy.Spider):
                     item['league_id'] = league_id
                     item['league_id'] = league_id
                     item['set_id'] = new_result['k']
                     item['set_id'] = new_result['k']
                     yield item
                     yield item
-                    # for i in new_result['n-o']:
-                    #     new_champion = i['mn']
-                        # for y in i['o']:
-                        #     item = Guanjun()
-                        #     game_id = str(new_result['i'][16])
-                        #     tema_home = y[0]
-                        #     champion_team = float(y[2]) - 1
-                        #
-                        #     item['tema_home'] = tema_home
-                        #     item['league_id'] = league_id
-                        #     item['game_id'] = game_id
-                        #     item['data_game'] = data_game
-                        #     item['time_game'] = time_game
-                        #     item['new_league_name'] = new_league_name
-                        #     item['champion_team'] = champion_team
-                        #     item['new_champion'] = new_champion
-                        #     # item['pt'] = pt
-                        #     item['ball'] = ball
-                        #     yield item

+ 2 - 2
hg3535/spiders/jieshu.py

@@ -19,8 +19,8 @@ class HgjieshuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             'hg3535.pipeline.jieshu.Jieshuqiupipeline': 300,
             'hg3535.pipeline.jieshu.Jieshuqiupipeline': 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/saiguo{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/saiguo{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 

+ 2 - 2
hg3535/spiders/lanqiu.py

@@ -48,8 +48,8 @@ class LanqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             "hg3535.pipeline.lanqiu.Lanqiupipeline": 300,
             "hg3535.pipeline.lanqiu.Lanqiupipeline": 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/lanqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/lanqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 

+ 2 - 2
hg3535/spiders/roll_bangqiu.py

@@ -19,8 +19,8 @@ class BqrangqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             "hg3535.pipeline.roll_bangqiu.Roll_Banqiupipeline": 350,
             "hg3535.pipeline.roll_bangqiu.Roll_Banqiupipeline": 350,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/roll_bangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/roll_bangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/4/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']  # 滚球菜单 棒球滚球列url
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/4/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']  # 滚球菜单 棒球滚球列url
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)

+ 2 - 2
hg3535/spiders/roll_lanqiu.py

@@ -45,8 +45,8 @@ class LanqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             "hg3535.pipeline.roll_lanqiu.Roll_Lanqiupipeline": 200,
             "hg3535.pipeline.roll_lanqiu.Roll_Lanqiupipeline": 200,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/roll_lanqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/roll_lanqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
 
 
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)

+ 2 - 2
hg3535/spiders/roll_wangqiu.py

@@ -49,8 +49,8 @@ class WangqiuSpider(scrapy.Spider):
             # "hg3535.pipeline.Roll_Wangqiupipeline": 350,
             # "hg3535.pipeline.Roll_Wangqiupipeline": 350,
             "hg3535.pipeline.roll_wangqiu.Roll_Wangqiupipeline": 350,
             "hg3535.pipeline.roll_wangqiu.Roll_Wangqiupipeline": 350,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/roll_wangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/roll_wangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
 
 
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)

+ 2 - 2
hg3535/spiders/roll_zuqiu.py

@@ -18,8 +18,8 @@ class ZuqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES":{
         "ITEM_PIPELINES":{
             'hg3535.pipeline.roll_zuqiu.Roll_Zuqiupipeline': 200,
             'hg3535.pipeline.roll_zuqiu.Roll_Zuqiupipeline': 200,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/roll_zuqiu_{}_{}_{}.log".format(to_day.year, to_day.month,to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/roll_zuqiu_{}_{}_{}.log".format(to_day.year, to_day.month,to_day.day)
     }
     }
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/1/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/1/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)

+ 2 - 2
hg3535/spiders/saiguo.py

@@ -18,8 +18,8 @@ class HgjieshuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             'hg3535.pipeline.saiguo.Jieshuqiupipeline': 300,
             'hg3535.pipeline.saiguo.Jieshuqiupipeline': 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/saiguo{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/saiguo{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
 
 
     def start_requests(self):
     def start_requests(self):

+ 2 - 2
hg3535/spiders/wangqiu.py

@@ -16,8 +16,8 @@ class LanqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             "hg3535.pipeline.wangqiu.Wangqiupipeline": 300,
             "hg3535.pipeline.wangqiu.Wangqiupipeline": 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "../hg3535/log/wangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/wangqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
     }
     }
     # rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     # rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 

+ 2 - 2
hg3535/spiders/zhibo.py

@@ -18,8 +18,8 @@ class ZuqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES":{
         "ITEM_PIPELINES":{
             'hg3535.pipeline.zhibo.Zuqiupipeline': 200,
             'hg3535.pipeline.zhibo.Zuqiupipeline': 200,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "./log/FTzhibo_{}_{}_{}.log".format(to_day.year, to_day.month,to_day.day)
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/zhibo_{}_{}_{}.log".format(to_day.year, to_day.month,to_day.day)
     }
     }
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/1/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']
     start_urls = ['https://odata.yonghuai5515.com/odds6i/d/getodds/zh-cn/sid/1/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)

+ 2 - 2
hg3535/spiders/zuqiu.py

@@ -20,8 +20,8 @@ class ZuqiuSpider(scrapy.Spider):
         "ITEM_PIPELINES": {
         "ITEM_PIPELINES": {
             'hg3535.pipeline.zuqiu.Zuqiupipeline': 300,
             'hg3535.pipeline.zuqiu.Zuqiupipeline': 300,
         },
         },
-        # 'LOG_LEVEL': 'DEBUG',
-        # 'LOG_FILE': "./log/zuqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day),
+        'LOG_LEVEL': 'DEBUG',
+        'LOG_FILE': "./log/zuqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day),
     }
     }
     # rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
     # rls = redis.Redis(host=R_HOST, port=R_POST, db=R_DB, password=R_PASSWORD)
 
 

+ 1 - 1
hg3535/utils/LocalToken.py

@@ -1 +1 @@
-token = {'token': 'mVUm5Y15717377705daed0aad4869', 'username': 'python', 'password': 'python888', 'token_url': 'http://stadmin.bocai108.com/getToken'}
+token = {'token': 'fa2V1A15717383585daed2f66dca8', 'username': 'python', 'password': 'python888', 'token_url': 'http://stadmin.bocai108.com/getToken'}

+ 3 - 2
hg3535/utils/helper.py

@@ -3,18 +3,19 @@ import json
 from requests_futures.sessions import FuturesSession
 from requests_futures.sessions import FuturesSession
 from .langconv import *
 from .langconv import *
 from .LocalToken import token
 from .LocalToken import token
+from ..settings import T_USER, T_PASSWORD, T_URL
 
 
 
 
 class Helper(object):
 class Helper(object):
     @staticmethod
     @staticmethod
     def async_post(url, params):
     def async_post(url, params):
         fs_session = FuturesSession()
         fs_session = FuturesSession()
-        t_url, t_user, t_password, t_token = token['token_url'], token['username'], token['password'], token['token']
+        t_url, t_user, t_password, t_token = T_URL, T_USER, T_PASSWORD, token['token']
         data = fs_session.post(url, data={"data": json.dumps(params), "token": t_token}, timeout=180).result()
         data = fs_session.post(url, data={"data": json.dumps(params), "token": t_token}, timeout=180).result()
         try:
         try:
             new_data = data.json()
             new_data = data.json()
             if new_data.get('status') == 6:
             if new_data.get('status') == 6:
-                t_data = fs_session.post(url=t_url, data={'account': t_user, 'password': t_password}).result()
+                t_data = fs_session.post(url=T_URL, data={'account': T_USER, 'password': T_PASSWORD}).result()
                 if t_data.json().get('status') == 1:
                 if t_data.json().get('status') == 1:
                     g_token = t_data.json()['data']['token']
                     g_token = t_data.json()['data']['token']
                     token['token'] = g_token
                     token['token'] = g_token