我正在抓取一些python网络抓取工具。 如果我转到此website,则要提取公司说明和投资者列表。
我设法找到了Chrome的XHR检查并找到了用于描述的json文件。但是,我似乎找不到关于它在何处以及如何获取投资者名单的绝对信息(低于TOPP 10)。
我在堆栈溢出时也经历了类似的问题。 Scraping: cannot access information from web,Trying to scrape - no response from XHR,Empty value from web scraping with python beautiful soup。
url = "https://bors.e24.no/#!/instrument/ZWIPE-ME.MERK"
website_url = requests.get(url, headers={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36'}).text
r = requests.get(url, headers=headers)
r.json()
如果我使用此网址(url =“ https://bors.e24.no/server/suggest?group=SEARCH_TICKERS&query=Zwipe”),则可以提取ISIN和说明。但是,我找不到用于TOPP 10列表的任何请求URL。
在此示例url中,我希望看到此列表:
TOPP 10 AKSJONÆRER INNSIDERE
Ti største eiere Eierandel
AVANZA BANK AB 16,75%
NORDNET BANK AB 6,78%
SKANDINAVISKA ENSKILDA BANKEN AB 6,77%
ARCANUM EIENDOM AS 5,99%
PHOTON FUTURE LIMITED 5,74%
LAUNCH AS 5,33%
SUNDT AS 5,02%
CONCITO AS 3,36%
TELECOM AS 2,13%
ADVISUM AS 1,66%
答案 0 :(得分:0)
显然,数据在Web套接字后面。
Chrome检查->网络-> WS(Websocket)[PIC1]->组件->标头[PIC2]
当找到Web套接字连接URL时,您可以遵循该代码并收到傍晚的答案。我还在“消息”选项卡(而不是标题)中找到了要接收TOPP 10列表所需发送的消息。
ws = create_connection("wss://bors.e24.no/server/components")
message = "ping"
ws.send(message)
While True:
result = ws.recv()
Print("Received ", result) #receive a pong