bs4とlxmlを使用してWebページを解析しようとしています。BeautifulSoupがHTML Webページを解析できません - javascriptエラー
def parse_all_authors(soup, author_name):
pages_left = True
articles = [] #list of articles
while pages_left:
articles.extend(soup.find_all('a', {"class": "smallV110"}))
a = soup.find('a', {"class": "paginationNext", "title": "Next Page"})
if a:
link = a["href"]
soup = BeautifulSoup(requests.get(link).text, "lxml")
else:
pages_left = False
coauthors = {}
for article in articles:
link = article["href"]
soup = BeautifulSoup(requests.get("https://apps.webofknowledge.com" + link).text, "lxml")
add_coauthors = soup.find_all('a', {"title": "Find more records by this author"})
for auth in add_coauthors:
name = auth.text
names = name.split(',')
last_name = str(names[0].lower())
url = auth["href"]
if last_name not in coauthors.keys():
coauthors[last_name] = url
私は、Webページが解析されている場合、正しく 例えば、次のコードを使用してテストしたい:特に、私は、次のコードを使用してWeb of Scienceのから情報を抽出しようとしています
soup = BeautifulSoup(requests.get("https://apps.webofknowledge.com/Search.do?product=WOS&SID=R1hBLiuXxLjnVr3iXNn&search_mode=GeneralSearch&prID=770f4d07-ccdf-4e30-a906-a98e4b6eb455").text, "lxml")
とウェブページが正しく解析されています。
しかし、同じ「スープ」変数を持つ関数parse_all_authorsを呼び出し、検索したい著者との文字列を入力すると、次のエラーが発生します。 requests.exceptions.InvalidURL:解析に失敗しました:apps。 webofknowledge.comjavascript:;
ページソースを表示しようとしているときにこれを見つけることができません(「apps.webofknowledge.comjavascript :;」)。私は単純なhtml.parserまたはhtml5libで "lxml"の代わりに同じページを解析しようとしましたが、同じエラーが表示されます。
お手伝いできますか?
はあなたの助けのためにありがとうございました!私はそれを働かせることができた! :) – anasvaf