質問編集履歴

1

誤字

2023/05/24 06:06

投稿

t.t.t.
t.t.t.

スコア7

test CHANGED
File without changes
test CHANGED
@@ -1,11 +1,6 @@
1
1
  ### 実現したいこと
2
2
  ./
3
3
  ├─ app.py ..... 実行ファイル
4
- └─ codes/
5
- /└─ test.py
6
- /└─ init.py
7
- flaskのapp.pyに実行コード、codesというフォルダ内に入っているtest.pyに関数を定義しています。
8
- app.pyを実行させて、test.pyの関数をうまく呼び出したいです。
9
4
 
10
5
  ### 前提
11
6
 
@@ -13,82 +8,9 @@
13
8
  おそらくapp.pyとtest.pyがうまく連携できていないのが原因なのですが、原因がわかりません。
14
9
 
15
10
  ```
16
- NameError: name 'url_list_001' is not defined
11
+ NameError: name 'list_1' is not defined
17
12
  ```
18
13
 
19
- ### 該当のソースコード
20
- 長いのでimport文などは省略させていただきましたm(__)m
21
- また、urlやfindの中身なども"---"と表記させていただきました。
22
- ```python
23
- #app.py
24
-
25
- from codes.test import get_url
26
-
27
- app = Flask(__name__)
28
- app.config['JSON_AS_ASCII'] = False
29
-
30
- @app.route('/', methods=['GET','POST'])
31
- def scraping():
32
- url="https://www.--------"
33
- res=requests.get(url)
34
- soup=BeautifulSoup(res.text,"html.parser")
35
-
36
- selector="--------"
37
- total_num=soup.select_one(selector).get_text()
38
- total_num=int(total_num.replace(",",""))
39
-
40
- n=30
41
-
42
- if total_num%n==0:
43
- total_page_num=total_num//30
44
- else:
45
- total_page_num=total_num//30 +1
46
-
47
- url_list_001=list()
48
- url_list_001.append(url)
49
-
50
- for i in range(2,total_page_num):
51
- url="https://www.---------="+str(i)
52
- url_list_001.append(url)
53
-
54
- url_list_002=list()
55
-
56
- for i in range(10):
57
- resultList = joblib.Parallel(n_jobs=12, verbose=3)( [joblib.delayed(get_url)(i)])
58
- url_list_002.extend(resultList)
59
-
60
- return url_list_002
61
-
62
- if __name__ == "__main__":
63
- app.run(debug=True)
64
14
 
65
15
 
66
- ```
67
- ```python
68
- #test.py
69
- def get_url(i):
70
- url_list_pre=list()
71
- url=url_list_001[i]
72
- raw_url = "https://www------"
73
16
 
74
- res=requests.get(url)
75
- soup=BeautifulSoup(res.text,"html.parser")
76
-
77
- for i in range(0,30):
78
- try:
79
- elem=soup.find_all("div",class_="wrapBox")[i].find("header").find------
80
- url_key=elem.attrs["href"]
81
- n_url_key=raw_url+url_key
82
- url_list_pre.append(n_url_key)
83
- except:
84
- pass
85
- return url_list_pre
86
-
87
- ```
88
- ### 試したこと
89
-
90
- test.py単体で動かしたときはコードは実行されます。
91
- from codes.test import get_urlではなく、
92
- from codes import testに変更し、joblib.delayed(test.get_url)(i)にした場合も結果は同様でした。
93
-
94
-