对不起,占用您的时间,我正在学习美丽的汤,我想创建一个数据格式,它将从这个URL复制表
import pandas as pd
# To extract fundamental data
from bs4 import BeautifulSoup as bs
import requests
headers = {
'User-Agent': 'Mozilla/5.0'}
base_url = 'https://finviz.com/screener.ashx?v=111&f=cap_smallover,sh_curvol_o500,sh_price_o3,sh_relvol_o1,sh_short_o10,ta_pattern_wedgedown&ft=3&o=-change'
html = requests.get(base_url, headers=headers)
soup = bs(html.content, "html.parser")
main_div = soup.find('div', attrs={'id': 'screener-content'})
table = main_div.find('table')
sub = table.findAll('tr')
rows = sub[5].findAll('td')
data = []
for row in rows:
link = row.a
if link is not None:
data += link.get_text()
print(data)
但我得到的是:
['1', '1', 'A', 'P', 'I', 'A', 'g', 'o', 'r', 'a', ',', ' ', 'I', 'n', 'c', '.', 'T', 'e', 'c', 'h', 'n', 'o', 'l', 'o', 'g', 'y',
就这样一个。
如何将所有这些数据保存到列表中,以便在finviz筛选器表附近创建数据?谢谢
发布于 2020-12-04 13:58:59
代码中唯一的问题是:
data += link.get_text()
+=
语法在Python中不像这样工作。要向list
添加元素,我们可以使用L.append(obj)
。因此,您的代码可以更改为:
data.append(link.get_text())
https://stackoverflow.com/questions/65144816
复制相似问题