这可能是一个长期的机会,但人们总是非常有帮助的问题,我已经张贴在过去,所以我要尝试。如果有人能帮我,那就太好了。。。你知道吗
我正在尝试使用Scrapy来获得搜索结果(链接),在中国在线报纸上搜索关键字后-pages like this
当我在Chrome中检查页面的html时,文章的链接似乎就在那里。但是当我尝试用一个Scrapy spider抓取它时,html更加基本,我想要的链接不会出现。我认为这可能是因为结果是使用JavaScript绘制到页面的?我试着将“Scrapy”和“Scrapy selenium”结合起来来解决这个问题,但仍然不起作用。我听说Splash可能有用,但设置起来似乎很复杂。你知道吗
这是我的粘蜘蛛的代码:
import scrapy
from scrapy_selenium import SeleniumRequest
class QuotesSpider(scrapy.Spider):
name = "XH"
def start_requests(self):
urls = [
'http://so.news.cn/#search/0/%E4%B8%80%E5%B8%A6%E4%B8%80%E8%B7%AF/1/'
]
for url in urls:
yield SeleniumRequest(url=url, wait_time=90, callback=self.parse)
def parse(self, response):
print(response.request.meta['driver'].title)
page = response.url.split("/")[-2]
filename = 'XH-%s.html' % page
with open(filename, 'wb') as f:
f.write(response.body)
self.log('Saved file %s' % filename)
如果有帮助的话,我也可以发布任何其他的垃圾文件。我还修改了settings.py
后面的these instructions。你知道吗
任何帮助都将不胜感激。我完全被这个困住了!你知道吗
在inspect tool open network tab and watch requests中,您将发现数据来自this url,因此使用普通的
scrapy.Request()
对其进行爬网。蜘蛛是这样的:
相关问题 更多 >
编程相关推荐