Skip to content
This repository was archived by the owner on Mar 5, 2024. It is now read-only.
This repository was archived by the owner on Mar 5, 2024. It is now read-only.

Scraper fails with 400 Bad Request: Missing features #31

@DosAmp

Description

@DosAmp

I find myself unable to start scraping in online mode:

[info]    Server started on: http://localhost:4788
[error]   twitter: failed to fetch response body: 400 Bad Request

The Bookmarks API request sent by my browser currently looks like this after parsing:

{
   "variables": {
      "count": 20,
      "includePromotedContent": true
   },
   "features": {
      "graphql_timeline_v2_bookmark_timeline": true,
      "rweb_lists_timeline_redesign_enabled": true,
      "responsive_web_graphql_exclude_directive_enabled": true,
      "verified_phone_label_enabled": false,
      "creator_subscriptions_tweet_preview_api_enabled": true,
      "responsive_web_graphql_timeline_navigation_enabled": true,
      "responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
      "tweetypie_unmention_optimization_enabled": true,
      "responsive_web_edit_tweet_api_enabled": true,
      "graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
      "view_counts_everywhere_api_enabled": true,
      "longform_notetweets_consumption_enabled": true,
      "responsive_web_twitter_article_tweet_consumption_enabled": false,
      "tweet_awards_web_tipping_enabled": false,
      "freedom_of_speech_not_reach_fetch_enabled": true,
      "standardized_nudges_misinfo": true,
      "tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
      "longform_notetweets_rich_text_read_enabled": true,
      "longform_notetweets_inline_media_enabled": true,
      "responsive_web_media_download_video_enabled": false,
      "responsive_web_enhance_cards_enabled": false
   },
   "fieldToggles": {
      "withArticleRichContentState": false
   }
}

When I include the current feature set of Scraper.features in the URL, I get the following error using curl:

HTTP/2 400
{"errors":[{"message":"The following features cannot be null: responsive_web_twitter_article_tweet_consumption_enabled, responsive_web_media_download_video_enabled","extensions":{"name":"BadRequestError","source":"Client","code":336,"kind":"Validation","tracing":{"trace_id":"xxxxxxxxxxxxxxxx"}},"code":336,"kind":"Validation","name":"BadRequestError","source":"Client","tracing":{"trace_id":"xxxxxxxxxxxxxxxx"}}]}

After adding at least these two features, the request succeeds. Therefore, I conclude that this change should only require an update to the API feature set. The fieldToggles query parameter still does not seem to be needed at this time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions