我正在尝试将以下网址中的数据保存为三元组商店以供将来查询。这是我的代码:
import requests
from bs4 import BeautifulSoup
import pandas as pd
import numpy as np
import re
url='http://gnafld.net/address/?per_page=10&page=7'
page = requests.get(url)
response = requests.get(url)
response.raise_for_status()
results = re.findall('\"Address ID: (GAACT[0-9]+)\"', response.text)
address1=results[0]
a = "http://gnafld.net/address/"
new_url = a + address1
r = requests.get(new_url).content
print(r)
在我运行上面的代码之后,我得到了如下答案: enter image description here
我的问题是如何将RDF数据插入Fuseki Server SPARQL端点?我尝试这样的代码:
import rdflib
from rdflib.plugins.stores import sparqlstore
#the following sparql endpoint is provided by the GNAF website
endpoint = 'http://gnafld.net/sparql'
store = sparqlstore.SPARQLUpdateStore(endpoint)
gs=rdflib.ConjunctiveGraph(store)
gs.open((endpoint,endpoint))
for stmt in r:
gs.add(stmt)
但它似乎不起作用。我该如何解决这个问题?谢谢你的帮助!
答案 0 :(得分:1)
您在图片中显示的答案是RDF三重格式,它不是很漂亮。
要将RDF数据存储在RDF存储中,您可以使用RDFlib。这是example如何做到这一点。
如果您使用Jena Fuseki服务器,您应该可以从python访问它,就像从python访问任何其他SPARQL端点一样。
您可能也希望看到我对相关SO question的回答。