【问题标题】:How to scrape incapsula protected website?如何抓取受封装保护的网站?
【发布时间】:2023-04-04 11:50:02
【问题描述】:

https://www.genecards.org/cgi-bin/carddisp.pl?gene=ZSCAN22

在上面的网页上,如果我点击See all 33,我会看到Chrome DevTools中发送了以下GET请求。

https://www.genecards.org/gene/api/data/Enhancers?geneSymbol=ZSCAN22

直接访问它被阻止。

我尝试使用木偶。我可以使用 puppeteer 单击“查看所有 33 个”,但随后我需要解析生成的 HTML 文件。最好直接从https://www.genecards.org/gene/api/data/Enhancers?geneSymbol=ZSCAN22 获取结果。用 puppeteer 点击“查看全部 33 个”后不知道如何获取它。

我不确定 apify 是否可以提供帮助。

谁能告诉我怎么刷?

【问题讨论】:

  • 在请求的头部你可以看到rvhk: xxxx。可能这是由先前请求生成的某种令牌。您可能需要发送该请求、接收令牌并更新您的标头。

标签: web-scraping puppeteer apify incapsula


【解决方案1】:

我用硒它工作正常

from selenium import webdriver
browser = webdriver.Chrome(executable_path="C:/src/webdriver/chromedriver.exe")
genesLocations = 'https://www.genecards.org/cgi-bin/carddisp.pl?gene={}'

提取基因组位置

gene='ZSCAN22'
browser.get(genesLocations.format(gene))
location = browser.find_element_by_xpath('//*[@id="genomic_location"]/div/div[3]/div/div')
print(location.text)

【讨论】:

    猜你喜欢
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多